我有一个字典和一个附加值数组:
df = [{'name':'Bob','number':65}, {'name':'Jonh','number':44}]
foo = ['grandpa', 'dad']
df
是我的dict,foo
是我要附加到df
的值数组(每个字典项一个值)
为此,我创建了一个列表:
_ = [d.update({'id':f}) for d,f inzip(df, foo)]
当然,这不会返回任何东西,而是更新df
,所以我的问题是:这是最具python风格的方法吗?也许因为它不返回任何值,所以使用for循环将是一个更好的选择,您认为呢
您最好使用循环添加它们(如果foo和df的长度不相同,我选择max(len)):
或者,您可以使用如下所示的zip(如@ShadowRanger所建议的):
如果你不想列清单,那么清单理解是完全不合适的。相反,你依赖的是副作用。Pythonic的意思是显式优于隐式,所以只需将代码转换为显式
for
循环即可相关问题 更多 >
编程相关推荐