我试图从python字典中删除所有\ r \ n。最简单的方法是什么?我的字典目前看起来像这样 -
{'': '34.8\r\n',
'Mozzarella di Giovanni\r\n': '34.8\r\n',
'Queso Cabrales\r\n': '14\r\n',
'Singaporean Hokkien Fried Mee\r\n': '9.8\r\n'
}
编辑:这就是我正在尝试的内容 -
for key, values in productDictionary.items() :
key.strip()
values.strip()
key.strip('"\"r')
key.strip('\\n')
values.strip('\\r\\n')
print productDictionary
输出仍然相同。
答案 0 :(得分:6)
您可以使用str.strip()
:
str.strip()
在没有参数的情况下使用时,会删除所有类型的前导和尾随空格。
>>> productDictionary={'': '34.8\r\n',
'Mozzarella di Giovanni\r\n': '34.8\r\n',
'Queso Cabrales\r\n': '14\r\n',
'Singaporean Hokkien Fried Mee\r\n': '9.8\r\n'
}
>>> productDictionary=dict(map(str.strip,x) for x in productDictionary.items())
>>> print productDictionary
>>>
{'': '34.8',
'Mozzarella di Giovanni': '34.8',
'Queso Cabrales': '14',
'Singaporean Hokkien Fried Mee': '9.8'}
help()
上的 str.strip()
S.strip([chars]) - >字符串或unicode
返回带有前导和尾随空格的字符串S的副本 除去。如果给出了chars而不是None,则删除chars中的字符 代替。如果chars是unicode,则S将在之前转换为unicode 剥离
答案 1 :(得分:6)
使用词典理解:
clean_dict = {key.strip(): item.strip() for key, item in my_dict.items()}
strip()
函数从字符串的正面和背面删除换行符,空格和制表符。