我正在尝试使用python模拟get请求。我有一个参数字典,我使用urllib.urlencode来urlencode他们
我注意到虽然字典的格式如下:
{ "k1":"v1", "k2":"v2", "k3":"v3", .. }
/?k1=v1&k3=v3%k2=v2...
为什么会发生这种情况,我可以强制字典中的顺序保持不变吗?
答案 0 :(得分:6)
正如您在评论中看到的那样,Python字典不是有序的,但Python中有一个OrderedDict
可用于实现您想要的结果:
from collections import OrderedDict
import urllib
urllib.urlencode(OrderedDict([('k1', 'v1'), ('k2', 'v2'), ('k3', 'v3')]))
# Out: 'k1=v1&k2=v2&k3=v3'
的更多信息