Я не могу найти решение для этой очень специфической проблемы, которая у меня есть.По сути, у меня есть два списка с двумя элементами каждый: [A, B] и [1,2].Я хочу создать вложенный цикл, который повторяет и расширяет второй список и добавляет каждый элемент первого списка после каждой итерации.
В конце я хочу увидеть следующее:
A B
1 A
1 B
2 A
2 B
1 1 A
1 2 A
2 1 A
2 2 A
1 1 B
1 2 B
2 1 B
2 2 B
1 1 1 A
1 1 2 A
...
Моя проблема заключается в том, что моя попытка сделать это рекурсивно разделяет А и В на части, чтобы появился этот паттерн (обратите внимание надругая первая строка тоже):
A
1 A
2 A
1 1 A
1 2 A
2 1 A
2 2 A
1 1 1 A
1 1 2 A
...
B
1 B
2 B
1 1 B
1 2 B
2 1 B
2 2 B
1 1 1 B
1 1 2 B
...
Как мне сохранить А и В вместе?
Вот код:
def second_list(depth):
if depth < 1:
yield ''
else:
for elements in [' 1 ', ' 2 ']:
for other_elements in list (second_list(depth-1)):
yield elements + other_elements
for first_list in [' A ', ' B ']:
for i in range(0,4):
temp=second_list(i)
for temp_list in list(temp):
print temp_list + first_list