Как добавить все возможные комбинации двух списков без использования двух вложенных циклов?

#python-3.x

#python-3.x

Вопрос:

lis1=[3,4,5] lis2=[1,2,3,4]

Как создать этот приведенный ниже список res_ из lis1 и lis2 без использования двух вложенных циклов for? res_=[4,5,6,7,5,6,7,8,6,7,8,9] #сумма всех комбинаций.

Как получить этот результат без использования вложенных циклов tow?

Комментарии:

1. Невозможно сделать это без двух вложенных циклов. Все, что вы можете сделать, это явно не писать циклы, но они будут выполняться некоторой вспомогательной функцией в любом случае. Чего вы пытаетесь достичь?

Ответ №1:

Для этого вы можете использовать itertools:

 import itertools
lis1=[3,4,5]
lis2=[1,2,3,4]

[sum(x) for x in itertools.product(lis1,lis2)]
#Out[24]: [4, 5, 6, 7, 5, 6, 7, 8, 6, 7, 8, 9]