【问题标题】:How to create dictionary from map class?如何从地图类创建字典?
【发布时间】:2022-01-22 15:24:08
【问题描述】:

我正在尝试在字典 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() 类重新放入字典中?

【问题讨论】:

  • 你能给一份 MRE 吗?

标签: python dictionary re


【解决方案1】:

我认为问题出在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'}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-08-21
    • 2018-05-01
    • 2015-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-03
    相关资源
    最近更新 更多