Python: Создание списка кортежей из списков [дубликат]

У меня есть два списка:

x = ['1', '2', '3']
y = ['a', 'b', 'c']

И мне нужно создать список кортежей из этих списков следующим образом:

z = [('1','a'), ('2','b'), ('3','c')]

Я пытался сделать это так:

z = [ (a,b) for a in x for b in y ]

, но привело к:

[('1', '1'), ('1', '2'), ('1', '3'), ('2', '1'), ('2', '2'), ('2', '3'), ('3', '1'), ('3', '2'), ('3', '3')]

I.E. Список кортежей каждого элемента в X с каждым элементом в Y ... Какой правильный подход делать то, что я хотел сделать? Спасибо ...

Отредактируйте: Два других дубликаты, упомянутые до редактирования, это моя вина, отступ его в другой цикл по ошибке ...

34
задан amyassin 5 September 2011 в 22:25
поделиться