у меня есть список словарей, каждый из которых имеет такие данные:Поиск список словарей для имени питона
'Caitlyn': {'date': (2012, 11, 24), 'player': 'Caitlyn', 'outcome': 'Win', 'gameid': '00006', 'stats': {'assists': 6, 'kills': 13, 'deaths': 4}}
, который я произвожу каждый элемент из файла с линиями и данных, как это:
[00006] Caitlyn - 13/4/6 - Win - 2012-11-24
Я хочу получить все индексы совпадающего имени игрока в списке словарей и распечатать их и/или распечатать данные в них. Я могу распечатать весь список и отформатировать его в соответствии с моим файлом и т. Д., Но я не уверен, как его искать, поскольку он немного отличается от других поисковых запросов, которые я делаю в этом.
Я могу напечатать весь набор данных с этим (некрасиво, я знаю, но это работает):
i = 0
for item in records:
print "\n", "[%s] %s - %s/%s/%s - %s - %s-%s-%s" % (records[i][0], records[i][1]['player'], records[i][1]['stats']['kills'], records[i][1]['stats']['deaths'], records[i][1]['stats']['assists'], records[i][1]['outcome'], records[i][1]['date'][0], records[i][1]['date'][1], records[i][1]['date'][2])
i = i + 1
Может кто-нибудь помочь с этим немного? Мне нужно иметь возможность искать его для имени игрока и распечатывать каждое его сопоставление (и возвращать индекс, чтобы я мог работать с сопоставленным набором для других вещей вместо повторного запуска всего поиска), и я думаю, что хочу вернуться список совпадений, чтобы я мог прибегать к ним или экспортировать их или что-то еще. Спасибо за любую помощь!
[править] Так как, кажется, больше вопросов, то ответы до сих пор, вот весь файл до сих пор: http://www.pasteall.org/37589/python
и это stats4.txt: http://www.pasteall.org/37590
Как и в начале, вы можете использовать перечисление и сэкономить на сохранении отслеживания счетчика приращений, то есть 'for i, item в перечислении (записи):' – BenTrofatter
Список словарей или словарь, содержащий словари? Списки не могут иметь именованные записи (''Caitlyn': {' ...) – Natan
Еще лучше, просто отбросьте счетчик циклов. Внутри цикла 'item - это записи [i]'. Кроме того, что делает поле 'player'? У вас есть дублирующаяся информация. –