Czytam plik tekstowy z wysokimi ocenami i próbuję znaleźć, jaki indeks wiersza znajduje się tam, gdzie kończy się nazwa i zaczyna się ocena. Jest to format pliku:
John 15
bob 27
mary 72
videogameplayer99 99
guest 71
Jak mogę to zrobić?
Czytam plik tekstowy z wysokimi ocenami i próbuję znaleźć, jaki indeks wiersza znajduje się tam, gdzie kończy się nazwa i zaczyna się ocena. Jest to format pliku:
John 15
bob 27
mary 72
videogameplayer99 99
guest 71
Jak mogę to zrobić?
Jeśli chcesz znaleźć kod pocztowy, aby podzielić wiersz na 2 oddzielne części, to możesz po prostu użyć [string].split()
(gdzie string
jest w osobnym wierszu). Jeśli potrzebujesz, aby znaleźć indeks przestrzeni z jakiegokolwiek innego powodu, należy: [string].index(" ")
.
Można wyróżnić linię, aby je oddzielić spacją. To doprowadzi do listy, która zawiera 2 "słowa", w wierszu, w tym przypadku słowy będą imię i ocena (w wierszu). Można otrzymać go za pomocą:
result = line.split()
name = result[0]
score = int(result[1])
W tym przypadku dla każdego wiersza będziesz szukać indeks, w którym najpierw znaleźć znak spacji " "
. W pythonie można to zrobić za pomocą find
funkcja w wierszu. Na przykład, jeśli masz ciąg s = videogameplayer99 99
wtedy s.find(" ")
wróci "17".
Jeśli korzystasz z tej metody do rozdzielania nazwy od liczby, ja bym zamiast tego polecam użyć split
funkcja, która podzieli wiersz na podstawie jakiegoś znaku separatora. Na przykład, s.split(" ") = ["videogameplayer99", "99"]
.