如何将字符串解析为字典
发布于 2021-01-29 15:04:01
我试图解析一个字符串,以分隔字符串中的列表。我目前有字符串:
string = "[['q1', '0', 'q1'], ['q1', '1', 'q2'], ['q2', '0', 'q2'], ['q2', '1', 'q1']]"
有什么方法可以解析字符串,以便字典键是列表的第一个元素,而键的值是元素的下一个。例如:
{'q1': ('0','q1'), 'q1': ('1','q2'), 'q2': ('0','q2'), 'q2': ('1', 'q1')}
关注者
0
被浏览
78
1 个回答
-
insted的的
dictionary
,你可以有列表:
您可以使用ast.literal_eval
从字符串解析Python数据结构>>> import ast >>> my_string = "[['q1', '0', 'q1'], ['q1', '1', 'q2'], ['q2', '0', 'q2'], ['q2', '1', 'q1']]" >>> k = ast.literal_eval(my_string) >>> k [['q1', '0', 'q1'], ['q1', '1', 'q2'], ['q2', '0', 'q2'], ['q2', '1', 'q1']] >>> [[x[0],tuple(x[1:])] for x in k] [['q1', ('0', 'q1')], ['q1', ('1', 'q2')], ['q2', ('0', 'q2')], ['q2', ('1', 'q1')]]