Скажем, у меня есть список имен файлов files
, содержащий данные в формате json.Чтобы получить данные в списке с записью для каждого файла, я использую понимание списка:
>>> import json
>>> data = [json.load(open(file)) for file in files]
Теперь мне было интересно, есть ли способ добавить имя файла file
в jsonданные, как если бы это выглядело так:
{
'Some': ['data', 'that', 'has', 'already', 'been', 'there'],
'Filename': 'filename'
}
Для моего случая json.load()
возвращает dict
, поэтому я пробовал что-то похожее на этот вопрос .Это не сработало для меня, потому что files
содержит строки, а не словари.
Редактировать
Для пояснения, если dict.update()
не вернул None
, это, вероятно,работа:
>>> data = [dict([('filename',file)]).update(json.load(open(file))) for file in files]