Итак, я делаю программу, которая переписывает предложение как индексы всех уникальных слов в предложении (например, предложение «быстрая коричневая лиса коричневая лиса» будет переписано как «12323»). Вот что у меня есть до сих пор;
sentence=input("please input your sentence")
sentence=sentence.split(" ")
unique=[]
positions=[]
print(sentence)
for i in sentence:
if i in (unique):
print(" the item " + i + " has been repeated")
ind = i.index(i)
positions.append(ind)
else:
unique.append(i)
print(unique)
print(positions)
Я хочу получить индекс «i» и добавить его в список «позиции», но когда я запускаю приведенный выше код с предложением «быстрая коричневая лиса коричневая лиса», я получаю этот вывод для «позиций»;
[0, 0]
Результат, который я хочу, будет выглядеть примерно так;
[2, 3]
Кажется, такая простая проблема, но для жизни я не могу понять это. Встроенная функция «enumerate» не подходит для решения проблемы, поскольку она делает так, что «i» никогда не будет найдено в «уникальном» и, следовательно, «позиции» будут пустыми.