Форум сайта python.su
a = input().split()
i = 0
j =
while i != len(a):
j = j.append(i)
i = i + 1.rfind()
print (j)
Программа, теоретически должна сортировать список по возрастанию и удалять повторяющаяся элементы в нём, но по какой-то необъяснимой для меня причине выдает ошибку. (TypeError: ‘int’ object is not subscriptable) В принципе знаком с языком недолго, поэтому такие осечки для меня свойственны. Пожалуйста, опишите, в чем может быть проблема и предоставте аналог этого кода, который вы считаете более эффективным. ( Учитывая способности новичка, разумеется) Заранее Спасибо.
Отредактировано veirant (Март 15, 2018 16:40:26)
Офлайн
a = input().split() i = 0 j = 1 while i != len(a): j = j.append(i) i = i + 1.rfind() print (j)
Отредактировано KasFun (Март 15, 2018 18:56:25)
Офлайн
a = input().split() i = 0 j = 1 while i != len(a): j = j.append(i) i = i + j.rfind() +1 print (j)
Офлайн
KasFun
ну и что вы вставили? у него в j явно list
Офлайн
Вы не совсем поняли в чем задача. В первую очередь, j - это список в который мы добавляем значения. Код не выделяется, даже после вашего пресловутого форматирования. Я знаю, что это исключительно моя ненаходчивость, но не возьмем во внимание. Вот аналог. Правда пока с a ндроида. https://drive.google.com/file/d/15yiCSoUn7JLRYwvbOMjAzaIUHaQaUUTi/view?usp=drivesdk
Отредактировано veirant (Март 15, 2018 19:59:27)
Офлайн
veirantчто это такое?1.rfind()
string.rfind(str, beg=0 end=len(string))
Отредактировано papuas (Март 20, 2018 02:36:10)
Офлайн
Вот ваша программа если я правильно понял условия.
a = input('Введите элементы списка через пробел: ').split(' ') j = [] i = None print(a) while a: i = a.pop(0) if i in a: print('Элемент {} повторяется.'.format(i)) else: j.append(i) print('Элемент {} добавлен в список.'.format(i)) else: j.sort() print(j)
Офлайн
KasFunвы о чем?
вот так без ошибок вроде
a = input('Введите элементы списка через пробел: ').split(' ') print(list(sorted(set(a))))
a = input('Введите элементы списка через пробел: ').split(' ') print(a) result = [] # создаем новый список без повторов ------------------------- for elem in a: if elem not in result: result .append(elem) print(result ) #----------------------------------------------------------------------------------- # сортируем новый список (result.sort()) n = 1 while n < len(result): for i in range(len(result) - n): if result[i] > result[i + 1]: result[i], result[i + 1] = result[i + 1], result[i] n += 1 print(result)
Офлайн