使用parse_qs()方法和parse_qsl()将字符串name=小明&age=18分别转换成字典格式与元组列表格式
时间: 2024-09-12 20:10:46 浏览: 91
`parse_qs()` 和 `parse_qsl()` 是 Python 的 `urllib.parse` 模块中用于解析 URL 查询字符串的两个函数。
`parse_qs(query_string, keep_blank_values=False, strict_parsing=False)` 函数接收一个查询字符串,例如 "name=小明&age=18",并将其转换为一个字典。在这个字典中,键(如 'name' 和 'age')对应于查询参数名,值(如 '小明' 和 '18')则是这些参数的值,如果是数组形式,则返回一个包含该值的列表。比如:
```python
from urllib.parse import parse_qs
query = "name=小明&age=18"
params_dict = parse_qs(query)
print(params_dict) # 输出: {'name': ['小明'], 'age': ['18']}
```
`parse_qsl(query_string, keep_blank_values=False, encoding=None)` 则将查询字符串转换为元组列表的形式,每个元素是一个二元组 (key, value),其中 key 是参数名,value 是参数值。同样处理数组形式:
```python
params_list = parse_qsl(query)
print(params_list) # 输出: [('name', '小明'), ('age', '18')]
```
这两个函数默认不会保留空值 (`keep_blank_values=False`),并且在遇到无效编码时会抛出异常 (`strict_parsing=True`)。如果需要这些选项的行为,可以设置相应的参数。
阅读全文
相关推荐















