python 字符串转字典

2023-03-07 00:00:00 python 字符串 字典

在Python中,你可以使用eval()函数或者json模块将字符串转换为字典类型的数据。

1、使用eval()函数将字符串转换为字典
使用eval()函数可以将字符串转换为Python代码,并执行该代码。如果字符串表示的是一个字典,那么执行后的结果就是一个字典对象。例如:

str1 = '{"name": "Alice", "age": 25, "city": "New York"}'
dict1 = eval(str1)
print(dict1)  # 输出 {'name': 'Alice', 'age': 25, 'city': 'New York'}

在上面的代码中,eval(str1)将字符串str1转换为Python代码并执行,返回一个字典类型的对象,然后将结果赋值给变量dict1。

注意,使用eval()函数时需要注意安全性,因为它可以执行任意的Python代码。如果输入的字符串不是一个合法的Python表达式,或者包含恶意代码,那么可能会导致程序出错或者安全问题。

2、使用json模块将字符串转换为字典
使用json模块可以将符合JSON格式的字符串转换为Python对象。因为JSON格式和Python字典类型的格式很相似,所以json模块可以轻松地将JSON字符串转换为Python字典类型。例如:

import json

str1 = '{"name": "Alice", "age": 25, "city": "New York"}'
dict1 = json.loads(str1)
print(dict1)  # 输出 {'name': 'Alice', 'age': 25, 'city': 'New York'}

在上面的代码中,json.loads(str1)将字符串str1解析为JSON格式的数据,并将其转换为Python字典类型,然后将结果赋值给变量dict1。注意,在使用json模块时,输入的字符串必须符合JSON格式,否则会导致解析出错。

相关文章