【发布时间】:2018-05-22 18:15:28
【问题描述】:
我正在编写一个循环来导入 20 个 .json 文件。我想创建一个包含 20 个字典的字典。除了需要有条件地使用两个字段之一来分配 20 个字典名称(即顶级字典中的 20 个键)之外,我什么都有。
我循环的最后两行是:
name=jsondat.get('Info', {}).get('Name')
dict1[name] = text_dict
name 行很好用,但 ['Info']['Name'] 并不存在于所有 20 个 .json 文件中。在这些情况下,我希望使用正则表达式从['Info'] 的不同字段中提取子字符串。为简洁起见,假设我想使用一个名为'URL' 的字段。所以看来我需要做类似的事情:
name=jsondat.get('Info', {}).get('Name','URL')
dict1[name] = text_dict
但这不起作用。它运行,但当'Name' 不可用时,它实际上并没有使用'URL' 字段。
【问题讨论】:
-
dict.get的第二个参数是默认的返回值。
标签: python python-3.x dictionary nested