Я хочу сравнить значения индекса в списке, но один индекс не существует, как я могу исправить эту ошибку - PullRequest
0 голосов
/ 31 октября 2018

Мне нужно создать новый список с двумя другими списками, сравнивая каждый элемент в обоих списках; удаляя наименьшее значение; добавление другого в новый список.

Но 2 списка не имеют одинаковую длину, поэтому в одном месте они будут сравниваться между индексом и ничем, но я не знаю, как с этим справиться.

lista1=[1,3,2,4]
lista2=[0,2,3,4,5]
listaN=[]

for i in range (0,11):
    if lista1[0]<lista2[0]:
        listaN.append(lista1[0])
        lista1.pop(0)
        print("Lista1 =",lista1)
        print("Lista2 =",lista2)
        print(listaN)
        print("")          

    else:
        listaN.append(lista2[0])
        lista2.pop(0) 
        print("Lista1 else =",lista1)
        print("Lista2 else =",lista2) 
        print("ListaN else =",listaN)
        print("")

print(listaN)

1 Ответ

0 голосов
/ 31 октября 2018

Ярлык:

listaN=lista1+lista2
listaN.sort()

или

while lista1 and lista2: #runs while there are elements in both lists
    if lista1[0]<lista2[0]:
        listaN.append(lista1[0])
        lista1.pop(0)
        print("Lista1 =",lista1)
        print("Lista2 =",lista2)
        print(listaN)
        print("")          

    else:
        listaN.append(lista2[0])
        lista2.pop(0) 
        print("Lista1 else =",lista1)
        print("Lista2 else =",lista2) 
        print("ListaN else =",listaN)
        print("")

#or add another for in the ifs if you need all the prints:
if lista1:
     lista1.sort()
if lista2:
     lista2.sort()    
listaN=listaN+lista1+lista2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...