【发布时间】:2015-08-20 12:55:23
【问题描述】:
我有一本简单的字典。我正在尝试使用旧字典中的 id 和旧字典中值的长度作为新字典的值创建一个新字典。我花了一个小时在堆栈溢出上试图找到我的答案,但对我没有任何帮助。我也尝试了 PEP 274 python 页面上的一些示例,主题为 https://www.python.org/dev/peps/pep-0274/。
这是我正在尝试的(python 2.7):
for k, v in old_dict.iteritems():
new_dict = { k : len(v) for k in old_dict.keys() for v in old_dict.values()}
这给了我一个不错的新字典,其中包含旧字典的 id,但值字段在所有 id 中都是相同的。例如:
old_dict = {'a':'andkfndknskfn', 'b':'nadfnn', 'c':'fn'}
使用上面的代码,我得到:
new_dict = {'a':13, 'b':13, 'c':13}
我想要的是:
new_dict = {'a':13, 'b':6, 'c': 2}
我求你可怜我 :) 我确实尝试了很长一段时间来自己找到答案,但我根本没有成功。预先感谢您帮助我找到我确定的简单答案。
【问题讨论】:
标签: python dictionary key