python中str转dict
时间: 2024-11-09 12:22:02 浏览: 15
在Python中,将字符串转换成字典(dict)通常涉及到解析某个特定格式的字符串,比如JSON字符串,因为它们天然就是键值对的形式。如果你想直接从普通的逗号分隔值(CSV)或其他自定义格式转换,可能会更复杂一些。
**1. JSON字符串转dict:**
对于JSON格式的字符串,可以使用`json`模块的`loads()`函数:
```python
import json
json_string = '{"name": "John", "age": 30, "city": "New York"}'
dict_obj = json.loads(json_string)
print(dict_obj) # 输出:{'name': 'John', 'age': 30, 'city': 'New York'}
```
这里,`json.loads()`会解析JSON字符串并返回一个Python字典。
**2. CSV字符串转dict(假设第一行是列名):**
可以使用内置的csv模块配合`split()`和`defaultdict`:
```python
import csv
from collections import defaultdict
csv_string = 'name,age,city\nJohn,30,New York'
reader = csv.DictReader(csv_string.splitlines())
dict_list = list(reader)[0] # 获取第一条记录作为字典
print(dict_list) # 输出:{'name': 'John', 'age': '30', 'city': 'New York'}
```
这里假设每行都是一个新的字典条目。
**3. 自定义格式:**
如果字符串不是标准格式,可能需要编写自定义的解析函数,根据具体的分隔符、键值对的组合等来分割和构建字典。
阅读全文