С вашим кодом довольно много проблем.
Как @Kenny Ostrom указал в своем ответе, ваш for
формат неверен.
Формат цикла for
:
for new_variable_name in list:
print(new_variable_name)
new_variable_name
назначается каждому элементу в этом списке
for
циклы повторяются для каждого элементав списке один раз.В вашем случае
for char in str1
print(char)
напечатает
a
a
b
f
h
Другая проблема, с которой вы столкнулись - это ненужный цикл while
.Вы окружаете свою петлю for
петлей while
, которая будет продолжать работать и не останавливаться.Если у вас не было цикла for
, это может быть полезно для вас, но в этом нет необходимости, поскольку вы уже используете цикл for
.
Структура вашей программы должна выглядеть примерно такесли вы хотите использовать цикл for:
list1=['a','b','c']
str1='aabfh'
i=0
for character in str1:
'''
Some code here that figures out **if** the character is in list1 and then prints that character.
'''
Вы сможете понять это отсюда.