1. 程式人生 > >python將字符串轉換成字典的幾種方法

python將字符串轉換成字典的幾種方法

AS ast clas 行處理 模塊 IT python color AR

當我們遇到類似於{‘a’:1, ‘b‘:2, ‘c‘:3}這種字符串時,想要把它轉換成字典進行處理,可以使用以下幾種方法:

1. Python自帶的eval函數(不安全)

dictstr = {"a":1, "b":2, "c":{"d":1}}
mydict = eval(dictstr)

2.使用 ast 模塊的 literal_eval 函數(安全)

dictstr = {"a":1, "b":2, "c":{"d":1}}
mydict = ast.literal_eval(dictstr)

3.使用 json 模塊的 loads 函數

dictstr = ‘{"a":1, "b":2, "c":{"d":1}}‘
mydict = json.loads(dictstr)

使字典有序

from collections import OrderedDict
dictstr = {"a":1, "b":2, "c":3}
obj = json.loads(dictstr, object_pairs_hook=OrderedDict) #返回一個class對象,可繼續處理

python將字符串轉換成字典的幾種方法