Also mache ich ein Programm, das einen Satz als Index aller eindeutigen Wörter im Satz umschreibt (zB der Satz "quick brown fox brown fox" wäre) umgeschrieben als "12323"). Hier ist, was ich bis jetzt habe;Den Index des Subjekts einer For-Schleife in Python anhängen
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)
Ich möchte den Index „i“ erhalten und es in die Liste „Positionen“ anhängen, aber wenn ich den obigen Code mit dem Satz „quick brown fox brown fox“ laufen bekomme ich diese Ausgabe für " Positionen ";
[0, 0]
Die Ausgabe, die ich will, würde eher so aussehen;
[2, 3]
Es scheint so ein einfaches Problem, aber für das Leben von mir kann ich es nicht herausfinden. Die eingebaute "enumerate" -Funktion passt nicht zu dem Problem, da sie es so macht, dass "i" nie in "unique" gefunden wird und daher "positions" leer wäre.
Sie müssen die integrierte Methode mit den entsprechenden Parametern aufrufen, um den Index des gewünschten eindeutigen Worts zu erhalten. Überprüfen Sie diesen [string index] (https://docs.python.org/2/library/string.html#string.index) – formatkaka