我希望将a的键替换dict为较短的变体,以便它可以以紧凑的形式通过电线发送.有没有办法更新密钥,而不是创建一个新项目dict并删除旧的?
我现在在做什么:
>>> a = dict(long_key=None)
>>> a['l'] = a['long_key']
>>> del a['long_key']
Run Code Online (Sandbox Code Playgroud)
我想做的是这样的事情:
>>> a = dict(long_key=None)
>>> a.update_key('long_key', 'l')
Run Code Online (Sandbox Code Playgroud)
我不确定dict自己的内部情况.但是,似乎 update_key可以避免需要删除旧密钥.
一个更优雅的解决方案可能是创建一个新字典......本质上是制作一个稍微不同的浅表副本:
a_send = dict((k[0], v) for k,v in a.items())
Run Code Online (Sandbox Code Playgroud)
不过,这肯定会降低空间效率——您是在寻找空间效率、时间效率还是代码优雅性?
| 归档时间: |
|
| 查看次数: |
2950 次 |
| 最近记录: |