Как получить доступ к отдельным индексам списка именованных кортежей в пределах defaultdict? - PullRequest
0 голосов
/ 02 июня 2019

Я создал defaultdict, используя CSV-файл.Defaultdict имеет режиссер фильма в качестве ключа и список именованных кортежей в качестве значений.Названные кортежи имеют 3 элемента: название, год и счет.Мне нужно изолировать элемент year, проверить, идет ли год после данного года, а затем проверить, что элемент оценки результатов для каждого кортежа выше заданного.

Вот вывод из словаря:

defaultdict(<class 'list'>, {'James Cameron': [Movie(title='Avatar', year=2009, score=7.9), Movie(title='Titanic', year=1997, score=7.7), Movie(title='Terminator 2: Judgment Day', year=1991, score=8.5), Movie(title='True Lies', year=1994, score=7.2), Movie(title='The Abyss', year=1989, score=7.6), Movie(title='Aliens', year=1986, score=8.4), Movie(title='The Terminator', year=1984, score=8.1)]

1 Ответ

0 голосов
/ 02 июня 2019

Не уверен, правильно ли я понял, но, может быть, что-то вроде ниже: Сгенерируйте defautdict и затем получите доступ к элементу счета

d = defaultdict(list)
ls1 = [('James Cameron' , Movie(title='Avatar', year=2009, score=7.9)),('James Cameron' , Movie(title='avs', year=2010, score=8.1))]
for k,v in ls1:
    d[k].append(v)
for item in d['James Cameron']:
    print(item.score))
...