python 把字符串转换字典
时间: 2023-05-11 09:03:45 浏览: 83
可以使用内置的 `json` 库来将字符串转换为字典,例如:
```
import json
json_string = '{"key1": "value1", "key2": "value2"}'
dictionary = json.loads(json_string)
print(dictionary)
# 输出:{'key1': 'value1', 'key2': 'value2'}
```
也可以使用 `ast` 库的 `literal_eval` 函数,例如:
```
import ast
dict_string = "{'key1': 'value1', 'key2': 'value2'}"
dictionary = ast.literal_eval(dict_string)
print(dictionary)
# 输出:{'key1': 'value1', 'key2': 'value2'}
```
相关问题
python把字符串转为字典
以下是两种将字符串转换为字典的方法:
1. 使用eval函数
```python
str = "{'id': 123, 'name': 'Tom', 'age': 12}"
str_c = eval(str)
print(type(str_c)) # 输出:<class 'dict'>
```
2. 使用json.loads函数
```python
import json
str = "{'id': 123, 'name': 'Tom', 'age': 12}"
try:
str_c = json.loads(str)
print(type(str_c))
except json.decoder.JSONDecodeError as e:
print("转换失败:", e)
```
注意:在使用json.loads函数时,字符串中的键名必须使用双引号,而不是单引号。如果字符串中的键名使用了单引号,会导致转换失败并抛出JSONDecodeError异常。
python字符串转换字典
可以使用eval()函数将一个字符串转换成字典类型。
例如,有一个字符串表示一个字典:
```
str_dict = '{"name": "Alice", "age": 25, "city": "New York"}'
```
可以使用eval()函数将其转换成字典类型:
```
dict_obj = eval(str_dict)
```
现在,dict_obj就是一个字典类型的对象,可以使用字典的方法来操作它:
```
print(dict_obj["name"]) # 输出:Alice
print(dict_obj["age"]) # 输出:25
print(dict_obj["city"]) # 输出:New York
```