我試圖在my_dict充滿字串(包括鍵和值中的符號)的字典中引入轉義字符。
我知道我可以使用以下方法來做到這一點:
import re
map(re.escape, my_dict))
但是我如何重構字典呢?
這樣做:
dict(map(re.escape, my_dict)
給出錯誤:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: dictionary update sequence element #0 has length 7; 2 is required
有沒有正確的方法讓map()班級重新回到字典中?
uj5u.com熱心網友回復:
我認為問題在于map(re.escape, my_dict)),您只向鍵添加轉義字符。
例子:
my_dict = {'hoho.ho':'merry.christmas'}
for i in map(re.escape, my_dict):
print(i)
輸出:
hoho\.ho
您需要將其與值一起壓縮以創建字典。試試這個:
new_dict = dict(zip(map(re.escape, my_dict), map(re.escape, my_dict.values())))
輸出:
>>> print(new_dict)
{'hoho\\.ho': 'merry\\.christmas'}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/390237.html
