首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在parse_qsl中更改python中参数的值?

问如何在parse_qsl中更改python中参数的值?
EN

Stack Overflow用户
提问于 2019-03-30 02:38:55
回答 1查看 38关注 0票数 0

我需要在参数q上加上+4,并在修改后取消对查询字符串的解析。我遇到的问题是parse_qsl给了一个列表中的元组,所以我不能修改这个元组。我不能使用parse_qs,因为我有多个同名的参数。如何修改Q参数,如何解析本场景下的查询?

代码语言:javascript
复制
from urllib import parse
url = 'https://www.test.com/search?q=one+two+three&array[]=apple&array[]=oranges'
parts = parse.urlparse(url)
querys = parse.parse_qsl(parts.query)

# >>> querys
# [('q', 'one two three'), ('array[]', 'apple'), ('array[]', 'oranges')]
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-30 03:11:26

我不确定我是否正确理解了你的问题,这是你想要的吗?

代码语言:javascript
复制
from urllib import parse

url = 'https://www.test.com/search?q=one+two+three&array[]=apple&array[]=oranges'
parts = parse.urlparse(url)
querys = [list(q) for q in parse.parse_qsl(parts.query)]

for q in querys:
    if q[0] == 'q':
        q[1] = q[1] + ' four'

print([tuple(q) for q in querys])
#[('q', 'one two three four'), ('array[]', 'apple'), ('array[]', 'oranges')]
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55423702

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档