2024-09-26 22:51:17 发布
网友
我有一本{0: -1.0, 21: 2.23, 7: 7.1, 46: -12.0}形式的字典
{0: -1.0, 21: 2.23, 7: 7.1, 46: -12.0}
如何将其转换为{'p0': -1.0, 'p21': 2.23, 'p7': 7.1, 'p46': -12.0}
{'p0': -1.0, 'p21': 2.23, 'p7': 7.1, 'p46': -12.0}
有效地,即:
没有for循环和类似dict[key[i]] = dict.pop("p"+str(key[i]))的东西
dict[key[i]] = dict.pop("p"+str(key[i]))
您可以使用字典理解:
d = {0: -1.0, 21: 2.23, 7: 7.1, 46: -12.0} d = {f"p{k}":v for k,v in d.items()} print(d)
输出:
注意这也会起作用:
d = {f"p{k}":d[k] for k in d}
问题中提到的项目分配和pop表明您希望修改现有词典。不幸的是,您只能使用可用的方法,并且没有方法重命名密钥。另一个选项是完全清除字典,并从包含修改键的完整新字典中update,而不是重复进行项赋值和pop。例如:
pop
update
d1 = d.copy() d.clear() d.update({"p" + str(k): v for k, v in d1.items()})
您可以使用字典理解:
输出:
注意这也会起作用:
问题中提到的项目分配和
pop
表明您希望修改现有词典。不幸的是,您只能使用可用的方法,并且没有方法重命名密钥。另一个选项是完全清除字典,并从包含修改键的完整新字典中update
,而不是重复进行项赋值和pop。例如:相关问题 更多 >
编程相关推荐