Не удается получить желаемый результат для списка

#python #list

Вопрос:

 list1 = ["Hello ", "take "]
list2 = ["Dear", "Sir"]

for i in list1:
    for j in list2:
        print(i j)
 

выход:

['Hello Dear', 'Hello Sir', 'take Dear', 'take Sir']

Но я получаю результат в виде :

Здравствуй, дорогой

Здравствуйте, сэр

возьми, Дорогая

возьмите, сэр

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

1. Я ответил на ваш вопрос, предполагая, что вы используете python. Пожалуйста, отредактируйте свой вопрос, чтобы добавить тег python.

Ответ №1:

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

Здесь у вас есть полученный код:

 list1 = ["Hello ", "take "]
list2 = ["Dear", "Sir"]
list3 = [];
for i in list1:
    for j in list2:
        list3.append(i j)
print(list3)
 

PD: Я предполагаю, что вы используете python.

Ответ №2:

Вы можете написать его с пониманием списка :

 list1 = ["Hello ", "take "]
list2 = ["Dear", "Sir"]

res = [i   j for i in list1 for j in list2]
print(res)
 

Выход:

['Hello Dear', 'Hello Sir', 'take Dear', 'take Sir']

Причина, по которой ваш код не работает, заключается в том, что вы получаете элементы и печатаете их на каждой итерации. Сначала вы должны сохранить их в списке, потому что вывод-это список!