1

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

そして、出力は同じです。

4

2 に答える 2

9

辞書理解の使用:

clean_dict = {key.strip(): item.strip() for key, item in my_dict.items()}

このstrip()関数は、文字列の前後から改行、スペース、およびタブを削除します。

于 2013-01-16T19:36:37.847 に答える
7

あなたが使用することができます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のコピーを返します。Noneではなくcharsが指定されている場合は、代わりにchars内の文字を削除してください。charsがユニコードの場合、Sはストリッピング前にユニコードに変換されます

于 2013-01-16T19:36:24.927 に答える