python把字符串转为字典
时间: 2024-02-03 15:09:58 浏览: 23
以下是两种将字符串转换为字典的方法:
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 把字符串转换字典
可以使用内置的 `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 把字符串转化成字典
可以使用eval函数将字符串转换为字典。eval函数将字符串作为参数,并将其作为Python表达式进行求值。因此,如果字符串表示一个字典,那么eval函数将返回该字典。以下是一个例子:
```python
mstr = '{"name":"yct","age":10}'
mydict = eval(mstr)
print(mydict)
```
输出:`{'name': 'yct', 'age': 10}`
另外,也可以使用json模块中的loads函数将JSON字符串转换为字典。以下是一个例子:
```python
import json
json_str = '{"name":"yct","age":10}'
mydict = json.loads(json_str)
print(mydict)
```
输出:`{'name': 'yct', 'age': 10}`