Já jsem čtení textového souboru s vysokým skóre a snaží se zjistit, který index řetězce je místo, kde název zastávky, a skóre začíná. Jedná se o formát souboru:
John 15
bob 27
mary 72
videogameplayer99 99
guest 71
Jak to mohu udělat?
Já jsem čtení textového souboru s vysokým skóre a snaží se zjistit, který index řetězce je místo, kde název zastávky, a skóre začíná. Jedná se o formát souboru:
John 15
bob 27
mary 72
videogameplayer99 99
guest 71
Jak to mohu udělat?
Pokud jste se snaží najít index rozdělit řetězec do 2 samostatných částí, pak stačí použít [string].split()
(kde string
je individuální-line). Potřebujete-li najít index prostor pro nějakého jiného důvodu, použijte: [string].index(" ")
.
Můžete pásu linky, aby ji oddělit od prostoru. Výsledkem bude seznam obsahující 2 'slova' v řádku, v tomto případě slov, bude název a skóre (string). Můžete jej získat pomocí:
result = line.split()
name = result[0]
score = int(result[1])
V tomto případě, pro každý řádek, měli byste být při pohledu na index, kde si nejprve najít znak mezery " "
. V pythonu, můžete toho dosáhnout pomocí find
funkce na řetězec. Například, pokud máte řetězec s = videogameplayer99 99
pak s.find(" ")
vrátí `17'.
Pokud používáte tuto metodu split jméno z řady, jsem místo toho by doporučujeme používat split
funkce, která rozdělí řetězec na základě nějaký oddělovač. Například, s.split(" ") = ["videogameplayer99", "99"]
.