我有一个L词典列表,其中词典具有相同的键集.
我有另一个字典d,它也有与前面的字典相同的一组键.
对于key键组中的每一个,d[key]是一个可以应用的功能L[i][key],即d[key](L[i][key]).
我想使用值中L的函数重置字典值d,即
L[i][key] = d[key](L[i][key])
Run Code Online (Sandbox Code Playgroud)
为key所有人i.
我怎么能以更加pythonic的方式做到这一点?谢谢.
例如
d = {'a':int, 'b':myfun, 'c':yourfun}
L[1] = {'a':`10`, 'b':5, 'c':1.4}
Run Code Online (Sandbox Code Playgroud)
where int类型转换函数int(),myfun是一个可以取整数作为参数的函数,yourfun是另一个可以将浮点数作为参数的函数.
您可以L使用列表和字典理解使用正确的值重新生成:
L = [{k: d[k](v) for (k, v) in l.iteritems()} for l in L]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
189 次 |
| 最近记录: |