str_to_map
时间: 2025-01-05 20:31:21 浏览: 5
### 将字符串转换为映射(字典)
为了将字符串转换成映射(即Python中的`dict`),可以采用多种方法。这里介绍一种常见的方式,即将特定格式的字符串解析并构建对应的键值对。
假设有一个表示键值对形式的字符串 `"key1=value1; key2=value2"` 或者 JSON 格式的字符串 `"{\"key\":\"value\",\"anotherKey\": \"theValue}"` 。下面展示如何处理这两种情况:
#### 处理简单的键值对字符串
对于形如 `"key1=value1; key2=value2"` 的简单键值对字符串,可以通过分割操作来创建字典。
```python
def str_to_dict_simple(input_str, sep='=', pair_sep=';'):
items = input_str.split(pair_sep)
result = {}
for item in items:
parts = item.strip().split(sep, 1)
if len(parts) == 2:
key, value = parts
result[key.strip()] = value.strip()
return result
input_string = "name=John Doe; age=30"
output_dict = str_to_dict_simple(input_string)
print(output_dict) # 输出 {'name': 'John Doe', 'age': '30'}
```
此函数接受两个额外参数:分隔符 (`sep`) 和项之间的分隔符 (`pair_sep`) ,以便更灵活地适应不同输入格式[^1]。
#### 解析JSON风格的字符串到字典
如果字符串是以 JSON 形式给出,则可以直接利用 Python 内置库 json 来完成转换工作。
```python
import json
json_string = '{"name": "Alice", "age": 25}'
parsed_dict = json.loads(json_string)
print(parsed_dict) # 输出 {'name': 'Alice', 'age': 25}
```
这种方法适用于那些已经遵循标准 JSON 语法编写的字符串。它不仅支持基本的数据类型,还能够正确处理嵌套结构和其他复杂数据类型[^2]。
阅读全文