在Python中,将字符串转换为字典可以使用以下几种方法:
1. 使用`eval`函数:
s = '{ "name": "aaa", "age": 8 }'
dict1 = eval(s)
print(dict1) 输出:{'name': 'aaa', 'age': 8}
`eval`函数可以解析字符串中的Python表达式,并返回表达式的值。
2. 使用`ast.literal_eval`函数:
import ast
s = '{ "name": "aaa", "age": 8 }'
dict1 = ast.literal_eval(s)
print(dict1) 输出:{'name': 'aaa', 'age': 8}
`ast.literal_eval`函数是`eval`的安全版本,专门用于解析包含Python字面量的字符串,并返回字面量的值。
3. 使用`json.loads`函数:
import json
s = '{ "name": "aaa", "age": 8 }'
dict1 = json.loads(s)
print(dict1) 输出:{'name': 'aaa', 'age': 8}
`json.loads`函数用于解析JSON格式的字符串,并返回一个字典。
请根据您的需求选择合适的方法。需要注意的是,`eval`函数可能存在安全风险,因为它可以执行任意的Python代码,所以不建议在生产环境中使用。`ast.literal_eval`和`json.loads`相对来说更安全。