这篇文章帮助了我zip()。我知道我迟到了几年,但我仍然想做出贡献。这是在 Python 3 中。
注意:在 python 2.x 中,zip() 返回一个元组列表;在 Python 3.x 中,zip() 返回一个迭代器。
itertools.izip() 在 python 2.x == zip() 在 python 3.x
由于您正在构建一个元组列表,因此以下代码是尝试完成您正在做的事情的最 Pythonic 方式。
>>> lat = [1, 2, 3]
>>> long = [4, 5, 6]
>>> tuple_list = list(zip(lat, long))
>>> tuple_list
[(1, 4), (2, 5), (3, 6)]
或者,如果您需要更复杂的操作,您可以使用list comprehensions(或list comps)。列表推导的运行速度也与 map() 一样快,大约需要几纳秒,并且正在成为 Pythonic 与 map() 的新规范。
>>> lat = [1, 2, 3]
>>> long = [4, 5, 6]
>>> tuple_list = [(x,y) for x,y in zip(lat, long)]
>>> tuple_list
[(1, 4), (2, 5), (3, 6)]
>>> added_tuples = [x+y for x,y in zip(lat, long)]
>>> added_tuples
[5, 7, 9]