我有一本字典,它需要正确地将值转义以供乳胶消费。在
步骤:
从文本文件中获取一些JSON到python字典中。在
d1 = {'a': 'art', 'b': 'a_$b', 'c': ['_#', 'h'], 'd': {'e': 4, 'f#_a': {'g': '^_$#&'}}}
制作要转换的所有项目的词典:
^{pr2}$使d2
来自d1
和tex
,注意只有叶节点被转义:
>>>> d2 = unknown code here
>>>> d2
{'a': 'art', 'b': 'a\_\$b', 'c': ['\_\#', 'h'], 'd': {'e': 4, 'f#_a': {'g': '\^\_\$\#\&'}}}
这是我迄今为止的一份粗略的尝试。如您所见,我一直在重新创建d2
。在
def texEscape(originalKey, d):
if isinstance(d, dict):
for k, v in d.items():
if isinstance(v, str):
print(k)
print(v)
print()
else:
texEscape(originalKey, v)
elif isinstance(d, list):
for i in d:
texEscape(originalKey, i)
else:
print(originalKey)
print(d)
print()
最初我只打算做一个dict理解,其中每个字符串值都被
tex
替换,但是我没有意识到你有嵌套的列表dicts。这很管用。在{cd2>每一个值都是必要的。这是最简单的解决方案吗?可能没有。但它是python的,因为它不导入任何外部模块
相关问题 更多 >
编程相关推荐