重命名字典键:全面的解决方案
Python 字典是一种通用的数据结构,可以高效存储和检索键值对。但是,某些情况可能需要重命名键而不改变其值或扰乱字典的组织。这个问题解决了这个问题,并提供了一系列针对常规词典和 OrderedDicts 量身定制的解决方案。
Regular Dict
对于常规词典,一种简单的方法涉及使用pop() 方法删除旧键和 [] 运算符将值分配给新键:
<code class="python">mydict["k_new"] = mydict.pop("k_old")</code>
此操作有效地将项目移动到字典的末尾,除非 k_new 已经存在,在这种情况下,它会覆盖原值。
OrderedDict
OrderedDict,在 Python 3.7 中引入,保留键值对的插入顺序。要在保持顺序的同时重命名键:
<code class="python">OrderedDict((k_new if k == k_old else k, v) for k, v in od.items())</code>
这会使用生成器表达式将值重新分配给新键,确保保留顺序。
在 Python 3.7 Dict 中保留顺序
Python 3.7 字典本身支持插入顺序。要在保留此顺序的同时重命名密钥:
<code class="python">d = {0:0, 1:1, 2:2, 3:3} {k: v for k, v in d.items() if k != k_old} | {k_new: d[k_old]}</code>
修改密钥本身
问题询问有关修改密钥本身的问题。然而,由于Python中的键是可散列且不可变的,因此直接修改键是不可行的。但是,通过使用所需的键名称重新分配值并删除旧键,字典保持不变,有效地“重命名”键而不直接修改它。
以上是如何重命名 Python 字典中的键?的详细内容。更多信息请关注PHP中文网其他相关文章!