python - 从字典键中删除空格

标签 python dictionary

我有一个包含键/值的字典,例如:

{'C  14': ['15263808', '13210478'], 'W   1': ['13122205']}

我怎样才能从所有键中删除空格,以便它们变成:

{'C14': ['15263808', '13210478'], 'W1': ['13122205']}

最佳答案

您可以处理字典理解中的所有键;您可以使用 str.translate() 删除空格; Python 2 版本是:

{k.translate(None, ' '): v for k, v in dictionary.iteritems()}

Python 3 版本是:

{k.translate({32: None}): v for k, v in dictionary.items()}

您还可以使用 str.replace() 删除空格:

{k.replace(' ', ''): v for k, v in dictionary.items()}

但是对于更长的键,这可能会更慢;见Python str.translate VS str.replace

请注意,这些会生成一个字典。

Python 2 演示:

>>> d = {'C  14': ['15263808', '13210478'], 'W   1': ['13122205']}
>>> {k.translate(None, ' '): v for k, v in d.iteritems()}
{'W1': ['13122205'], 'C14': ['15263808', '13210478']}

和 2.6 兼容版本(使用 Alternative to dict comprehension prior to Python 2.7 ):

dict((k.translate(None, ' '), v) for k, v in dictionary.iteritems())

关于python - 从字典键中删除空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35758566/

相关文章:

python - 在 Python 中检查数据时避免嵌套循环

python - MultiIndex 来自两个索引的唯一值的乘积

Python将8个对象循环组合成3组,3-3-2

python - 为 flask 服务器初始化不同线程上的对象

python - 将字典转换为字符串python

c# - 找出两本词典之间的区别

pandas - 如果数据框列值匹配字典键,检查不同的列是否匹配字典值

python - 作为装饰器参数的变量

python - 将字符串转换为键不是字符串的字典

Swift二维字典错误