Найти - Пользователи
Полная версия: Поиск совпадающих элементов в списках
Начало » Python для новичков » Поиск совпадающих элементов в списках
1
NailDer
Выдает ошибку при выполнении.
 Поиск совпадающих элементов!
1-й список: [2, False, 9.1, (2-1j), 'hello', 5, 'Python']
2-й список: [5, 3, 'HELLO', 7, 12.5, 'Python', True, False]
Совпадают:
1-й элемент из 1-го списка и 7-й элемент из 2-го списка и 
Traceback (most recent call last):
  File "1111.py", line 18, in <module>
    if A[i]==B[k]:
IndexError: list index out of range
Надо просмотреть оба списка, найти одинаковые элементы, ели найдены вывести сообщение на экран. Только начал изучать циклы, через цикл for получилось хотел попробовать через While. Спасибо за помощь!
 print("Поиск совпадающих элементов!")
n=7
# Первый список
A=[2,False,9.1,2-1j,"hello",5,"Python"]
# Второй список
B=[5,3,"HELLO",7,12.5,"Python",True,False]
# Отображаем содержимое первого списка
print("1-й список:",A)
# Отображаем содержимое второго списка
print("2-й список:",B)
print("Совпадают:")
i=0
while i<=n:
	    i=i+1
	    k=0
	    while k<=n:
	    	k=k+1
	    	if A[i]==B[k]:
	    		txt=str(i)+"-й элемент из 1-го списка и "
	    		txt=txt+str(k)+"-й элемент из 2-го списка и "
	    		print(txt)
print("Программа завершенна!")
py.user.next
NailDer
 while i<=n:
Надо убрать равно, так как индекса 7 нет. 0 1 2 3 4 5 6 - семь индексов.
NailDer
 print("Поиск совпадающих элементов!")
n=8
# Первый список
A=[2,False,9.1,2-1j,"hello",5,"Python",12.5]
# Второй список
B=[5,3,"HELLO",7,12.5,"Python",True,False]
# Отображаем содержимое первого списка
print("1-й список:",A)
# Отображаем содержимое второго списка
print("2-й список:",B)
print("Совпадают:")
i=0
while i<=n:
	k=0
	while k<=n:
		if A[i]==B[k]:
		    txt=str(i)+"-й элемент из 1-го списка и "
		    txt=txt+str(k)+"-й элемент из 2-го списка и "
		    print(txt)
		k=k+1
	i=i+1
print("Программа завершенна!")
Поправил код и программа начала выполняться. Спс за помощь!
FishHook
NailDer
Только начал изучать циклы, через цикл for получилось хотел попробовать через While.
Слудующим шагом логично будет обойтись вообще без явного использования циклов. Это будет самое питоник-вейное решение.
py.user.next
NailDer
Поправил код и программа начала выполняться.
Надо убрать равно в условии цикла.
  
while i < n:
иначе ты прокручиваешь цикл 9 раз.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB