【发布时间】:2016-05-18 01:43:12
【问题描述】:
在以下测试数据中,我尝试将键“x”值附加到列表 ls。我的问题是为什么我在循环数据的第一行时没有得到 KeyError 。显然,第一行不包含键“x”。本来我以为我必须使用 Try/Except 来避免在循环数据时出错,但似乎不需要 Try/Except。
谁能帮我理解为什么这里没有生成 KeyError?
data = [{u'xyz': []},
{u'xyz': [{u'x' : 2,
u'y' : 3,
u'z' : 4}]}]
ls = []
for item in data:
ddd = item['xyz']
print ddd
for d in ddd:
ls.append(d['x'])
ls
输出:
[]
[{u'y': 3, u'x': 2, u'z': 4}]
[2]
【问题讨论】: