Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 28, 2018 10:45:43

ProPython
Зарегистрирован: 2018-06-28
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Подскажите в чём ошибка

Напишите программу, которая считывает список чисел lst из первой строки и число x из второй строки, которая выводит все позиции, на которых встречается число x в переданном списке lst.

Позиции нумеруются с нуля, если число x не встречается в списке, вывести строку “Отсутствует” (без кавычек, с большой буквы).

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

Я написал, но с ошибкой. Не говорите ответ. Просто подскажитею

a = input()
b = input()
c =
a = list(a)
if a.count(b) == 0:
print('Отсутствует')
else:
while a.count(b) >= 0:
d = a.index(b)
c.append(d)
a.remove(b)
print©

Офлайн

#2 Июнь 28, 2018 19:38:44

marvellik
Зарегистрирован: 2016-05-15
Сообщения: 639
Репутация: +  73  -
Профиль   Отправить e-mail  

Подскажите в чём ошибка

 a = input()
считывает строку
 a = list(a)
преобразует строку в список элементов.допустим у вас в первой строке числа
22 34 545 1 234 12 56
 [code]>>> a = input()
22 34 545 1  234 12 56
>>> a = list(a)
>>> print(a)
['2', '2', ' ', '3', '4', ' ', '5', '4', '5', ' ', '1', ' ', ' ', '2', '3', '4', ' ', '1', '2', ' ', '5', '6']
>>>[/code]
как видите результат не тот что нужно. ну и дальше прежде чем добавить что то в список его нужно определить, чего у вас нет потому что c = это как раз ошибку и даст да он и не нужен
 a = input().split() # наверно числа даны через пробел в первой строке
b = input()
if a.count(b) == 0: вообще лишнее, достаточно if b not in a: цикл while тут вообще не нужен
for i,elem in enumerate(a) дальше один if и вывод с end =' '

Офлайн

#3 Июнь 30, 2018 18:14:46

ProPython
Зарегистрирован: 2018-06-28
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Подскажите в чём ошибка

спасибо! помогли.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version