我有一本形式为 的字典{0: -1.0, 21: 2.23, 7: 7.1, 46: -12.0}。
我怎样才能把它变成 {'p0': -1.0, 'p21': 2.23, 'p7': 7.1, 'p46': -12.0}
有效地即:
没有 for 循环之类的东西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)
Run Code Online (Sandbox Code Playgroud)
输出:
{'p0': -1.0, 'p21': 2.23, 'p7': 7.1, 'p46': -12.0}
Run Code Online (Sandbox Code Playgroud)
请注意,这也将起作用:
d = {f"p{k}":d[k] for k in d}
Run Code Online (Sandbox Code Playgroud)