平時見到的url參數都是key-value, 一般vlaue都是字符串類型的
如果有幸和我一樣遇到字典,列表等參數,那么就幸運了
python2代碼
import json
from urllib import urlencode
# 1. 直接將url編碼
params = {
"name": "Tom",
"hobby": ["ball", "swimming"],
"books": [{"name": "語文", "pages": 20}]
}
print(urlencode(params))
"""
hobby=%5B%27ball%27%2C+%27swimming%27%5D&
books=%5B%7B%27name%27%3A+%27%5Cxe8%5Cxaf%5Cxad%5Cxe6%5Cx96%5Cx87%27%2C+%27pages%27%3A+20%7D%5D&
name=Tom
"""
# 2. 先用json序列化字典和列表參數
params = {
"name": "Tom",
"hobby": json.dumps(["ball", "swimming"]),
"books": json.dumps([{"name": "語文", "pages": 20}])
}
print(urlencode(params))
"""
hobby=%5B%22ball%22%2C+%22swimming%22%5D&
books=%5B%7B%22name%22%3A+%22%5Cu8bed%5Cu6587%22%2C+%22pages%22%3A+20%7D%5D&
name=Tom
"""
觀察1 和2 序列化出來的url參數不是一樣的,如果第一種方式的url不能正常訪問,那么就用第二種
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

