veta = "Jen pro ten dnešní den"
veta.split(" ")
['Jen', 'pro', 'ten', 'dnešní', 'den']
veta = "15.11.2021"
veta.split(".")
['15', '11', '2021']
Pozor, výsledkem je seznam znakových řetězců. Pokud byste tedy chtěli pracovat s prvky seznamu jako s čísly, je nejprve potřeba změnit jejich typ.
# je datum po r. 2000?
veta = "15.11.2021"
datum = veta.split(".")
if int(datum[2]) > 2000:
print("ano")
ano
Oddělovač může mít více znaků:
veta = "Jen pro ten dnešní den"
veta.split("en")
['J', ' pro t', ' dnešní d', '']
Pokud nezadáme žádný oddělovač, Python rozdělí znakový řetězec podle tzv. whitespace - prázdných znaků. Například více mezer se tedy bere jako jeden oddělovač.
veta = "Jen pro ten dnešní den"
veta.split()
['Jen', 'pro', 'ten', 'dnešní', 'den']
Pokud chceme se seznamem slov dále pracovat, uložíme se si ho do proměnné.
slova = veta.split()
print(slova)
print(len(slova))
['Jen', 'pro', 'ten', 'dnešní', 'den'] 5
Načtěte ze vstupu více čísel na jednom řádku oddělených mezerami a spočítejte jejich součet
Příklad vstupu:
12 4 7 8 1 15
Výstup:
47
join
¶Opak split
.
Pomocí join
můžeme spojit seznam znakových řetězců (pro prvky jiných typů join
nefunguje) do jednoho stringu.
Syntax se může zdát zvláštní - napřed napíšeme znak nebo znaky pomocí kterých chceme prvky seznamu spojit, např. mezeru:
" ".join(['Jen', 'pro', 'ten', 'dnešní', 'den'])
'Jen pro ten dnešní den'
"***".join(['Jen', 'pro', 'ten', 'dnešní', 'den'])
'Jen***pro***ten***dnešní***den'
Znakový řetězec, pomocí kterého seznam spojujeme může být i prázdný:
cislice = ["3", "9", "4", "5"]
"".join(cislice)
'3945'