在python zip()的2元组列表中使用urllib.parse.urlencode()

时间:2016-04-30 20:20:00

标签: python list zip tuples urlencode

我正在尝试使用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)

嗨再次,抱歉,我发现了问题,我现在就开始工作了。非常感谢。

1 个答案:

答案 0 :(得分:1)

更改

##add = add + urllib.parse.urlencode(ziplist) #this does not work

要:

add = add + urllib.parse.urlencode(list(zipped)) `