Znaky textu

Text není seznam, ale v něčem se mu podobá. Každý znak textu má svůj index, počítaný od 0, a můžete ho přečíst pomocí hranatých závorek. Fungují i záporné indexy:

jazyk = "Python"
print(jazyk[0])
print(jazyk[1])
print(jazyk[-1])

Program vypíše:

P
y
n

Funkce len() funguje i pro text: dá vám počet jeho znaků. Znaky jsou i mezery a interpunkce, takže "Ahoj, Tome!" má 11 znaků:

print(len(jazyk))
print(len("Ahoj, Tome!"))

Program vypíše:

6
11

Stejně jako u seznamu skončí chybou i čtení za koncem textu, tentokrát IndexError: string index out of range.

Jeden velký rozdíl tu ale je: znak textu změnit nemůžete. Jednou vytvořený text už zůstane takový, jaký je:

jazyk = "Python"
jazyk[0] = "J"

Program skončí touto chybou:

Traceback (most recent call last):
  File "<exec>", line 2, in <module>
TypeError: 'str' object does not support item assignment

str je název, kterým Python označuje text (znáte ho z funkce str()), a item assignment znamená přiřazení do prvku podle indexu. Hláška tedy říká, že text to neumožňuje. Když potřebujete jiný text, vytvořte nový, třeba pomocí + nebo f-řetězce, a uložte ho do proměnné.

Pokyny

Vytvořte proměnnou prvni_znak s prvním znakem textu jmeno.

Vytvořte proměnnou posledni_znak s posledním znakem textu jmeno. Použijte záporný index.

Vypište oba znaky a délku jména: print(prvni_znak, posledni_znak, len(jmeno)). Ve výpisu by se mělo objevit J v 8.

Začněte programovat zdarma

Registrací souhlasíte s provozními podmínkami a zásadami ochrany osobních údajů.

Nebo se registrujte pomocí:

11/12