【发布时间】:2021-07-28 00:56:39
【问题描述】:
我需要从包含正则表达式的配置文件中读取 dict 值。我看到的一种解决方案是读取为 json 并进行转换。我尝试了这个解决方案,但它不起作用:
我的文件包含这个字典:
{"my_word":"word\s"}
然后在脚本中:
import json
with open('config_dict.ini') as f:
data = f.read()
js = json.loads(data)
print(js)
但我收到错误“JSONDecodeError: Invalid \escape”。所以我试图逃避斜线:
{"my_word":"word\\s"}
并且没有错误,但它按原样读取 dict,当我使用正则表达式时,这将不起作用。
还有另一种阅读字典的方法吗?它不必包含 json。
编辑:我尝试了这个解决方案,但它不起作用。无论如何,如果我必须在正则表达式中添加这么多转义符,那将是一团糟。
【问题讨论】:
-
必须是 JSON 吗?如果您只是从文件中读取一行文本,则无需担心转义等。
-
@match no,JSON 解决方案对我不起作用。无论如何,如果我必须添加许多转义斜线,那将会非常混乱。
-
我看到了 ast 的解决方案,但我无法进行 pip 安装。出现错误。
标签: json python-3.x dictionary