设置向上
我有一个字典,其中每个键包含至少一个字符串元素的列表。
这是字典的一部分,
d = {
'Bergen-Enkheim': ['Bergen-Enkheim'],
'Bornheim/Ostend': ['Ostend,\xa0Bornheim'],
'Harheim': ['Harheim'],
'Innenstadt I': ['Altstadt,\xa0Bahnhofsviertel,\xa0Gallus,'
'\xa0Gutleutviertel,\xa0Innenstadt']
}
<小时/> 的问题
大多数元素以\xa0
开头,我想用空格替换。
我尝试了以下循环,
for key in d:
for x in d[key]:
x = x.replace('\xa0', ' ')
但d
保持不变。如何用空格替换不需要的字符?
答案 0 :(得分:1)
您可以对值使用经典迭代:
for values in d.values():
values[:] = [x.replace('\xa0', ' ') for x in values]
每个列表都已就地修改。
答案 1 :(得分:1)
字符串是不可变的,因此x.replace(...)
会生成一个新字符串,而不是更改字典列表中的现有字符串。然后,语句x = ...
将x
更新为新字符串的名称。简而言之,您必须明确更改字典列表中的条目。
for key in d2:
for i, x in enumerate(d2[key]):
d2[key][i] = x.replace('\xa0', ' ')
答案 2 :(得分:1)
您可以迭代键,然后更新值
for key in d:
d[key] = [s.replace('\xa0', '') for s in d[key]]