我正在尝试使用urllib.parse.urlencode()为get请求生成编码的url。为此,我需要使用带有2元组列表的urllib.parse.urlencode()。我需要生成动态列表,因为get请求基于输入的位置。这是针对mapquest api get请求的。我使用zip()创建了动态列表和2元组列表,但是urllib.parse.urlencode()在2元组列表上不起作用。请让我知道我做错了什么或者是否有其他方法可以做到这一点。谢谢。
import urllib.parse
add = ''
tolist=[]
newlist = []
locations = ['austin, tx', 'dallas, tx', 'denver, co', 'houston, tx','irving, tx', '3']
for item in range(2,len(locations)-1):
tolist.append('to')
newlist.append(locations[item])
print(locations[0])
print('tolist', tolist)
print('newlist', newlist)
zipped=zip(tolist, newlist)
add = add + urllib.parse.urlencode(zipped)
print()
parselist=[('to', 'denver, co'),('to', 'houston, tx'),('to', 'irving, tx')]
add = add + urllib.parse.urlencode(parselist) #this works
print('add', add)
嗨再次,抱歉,我发现了问题,我现在就开始工作了。非常感谢。
答案 0 :(得分:1)
更改
##add = add + urllib.parse.urlencode(ziplist) #this does not work
要:
add = add + urllib.parse.urlencode(list(zipped))
`