是否有任何聰明的方法來寫一個列表理解在多個列表中?在一個列表理解中的多個列表的Python值
我知道我可以使用一個單獨的範圍列表作爲索引,但這種方式我必須知道長度(或單獨獲取它與len()
函數調用)。
>>> a = range(10)
>>> b = range(10, 0, -1)
>>> [(a[x],b[x]) for x in range(10)]
[(0, 10), (1, 9), (2, 8), (3, 7), (4, 6), (5, 5), (6, 4), (7, 3), (8, 2), (9, 1)]
我很想有這樣的事情:
>>> [(a,b) for a in range(10) and b in range(10, 0, -1)]
[(0, 10), (1, 9), (2, 8), (3, 7), (4, 6), (5, 5), (6, 4), (7, 3), (8, 2), (9, 1)]
你會如何寫列表理解?有沒有辦法用itertools做到這一點?
範圍列表只是代表任何列表,我不一定想得到一個元組。也可能有一個函數,它將a和b作爲參數。所以zip不是我想要的。
更新:「因此,拉鍊不是我想要的。」我的意思是,我不想zip(range(10), range(10, 0, -1))
重複的[9184497](http://stackoverflow.com/questions/9184497/python-list-comprehension-function-with-參數功能於兩個列表)? – quazgar 2013-04-08 07:30:43