如何转换字符串
{"key"=>"Number of Contents in Sales Package", "value"=>"Pack of 3"}变成字典,就像
{'Number of Contents in Sales Package':'Pack of 3'}?发布于 2018-11-09 16:35:36
使用具有多个键值对的示例的re
import re
s = """{"key"=>"Number of Contents in Sales Package", "value"=>"Pack of 3"},
{"key"=>"Number of Contents in Sales Package 2", "value"=>"Pack of 5"}"""
pattern = re.compile(r'''{"key"=>"(?P<key>.*?)", "value"=>"(?P<value>.*?)"}''')
dict(pattern.findall(s)){“销售包中的内容数量”:“3包”,“销售包2中的内容数”:“5包”}
发布于 2018-11-09 16:26:14
您可以使用str.replace和ast.literal_eval将字符串转换为字典,然后重构:
from ast import literal_eval
x = '{"key"=>"Number of Contents in Sales Package", "value"=>"Pack of 3"}'
d = literal_eval(x.replace('=>', ':'))
d = {d['key']: d['value']}
print(d)
{'Number of Contents in Sales Package': 'Pack of 3'}发布于 2018-11-09 16:27:06
你可以这样做:
result = dict([k_v.replace('"', '').split('=>')
for k_v in string[1:-1].split(', ')])这将要求您的数据以下列形式显示:
'{key1=>value1, key2=>value2}'https://stackoverflow.com/questions/53229554
复制相似问题