Stewdent.eu
▾

Reťazce

Reťazec je dátový typ na uchovávanie textu. Python poskytuje mnoho vstavaných metód na vyhľadávanie, úpravu a formátovanie reťazcov.

Posledná aktualizácia: 3. novembra 2025

★☆☆☆☆ Stupeň 1computingprogrammingretazcetextstring3 min čítania

Nahlásiť chybu

Reťazce (angl. strings) sú jedným z najpoužívanejších dátových typov v programovaní. Kdekoľvek program pracuje s textom — mená, správy, adresy — pracuje s reťazcami.

Čo je reťazec?

Reťazec je postupnosť znakov uzavretá v úvodzovkách. Python akceptuje jednoduché aj dvojité úvodzovky:

pozdrav = "Ahoj, svet!"
meno = 'Katarína'
prazdny = ""            # prázdny reťazec

Pre viac riadkový reťazec použi tri úvodzovky:

text = """Toto je
viacriadkový
reťazec."""

Prístup k znakom — indexovanie

Každý znak v reťazci má index (poradové číslo), začínajúce od 0:

slovo = "Python"
#         012345

print(slovo[0])    # P
print(slovo[2])    # t
print(slovo[-1])   # n (posledný znak)
print(slovo[-2])   # o (predposledný)

Vystrihnutie časti reťazca (slicing)

text = "Dobrý deň"

print(text[0:5])   # "Dobrý" (od indexu 0 po 4)
print(text[6:])    # "deň" (od indexu 6 do konca)
print(text[:5])    # "Dobrý" (od začiatku po 4)
print(text[::2])   # každý druhý znak
Poznámka

Syntax pre slice je [start:stop:krok]. Hodnota stop nie je zahrnutá — text[0:5] vráti znaky na indexoch 0, 1, 2, 3, 4.

Dôležité metódy reťazcov

veta = "  Ahoj, Svet!  "

print(veta.upper())         # "  AHOJ, SVET!  "
print(veta.lower())         # "  ahoj, svet!  "
print(veta.strip())         # "Ahoj, Svet!" (odstráni medzery)
print(veta.replace("Svet", "Python"))  # "  Ahoj, Python!  "
print(veta.find("Svet"))    # 8 (index prvého výskytu)
print(veta.count("!"))      # 1 (počet výskytov)
print("ahoj".startswith("ah"))  # True
print("python".endswith("on"))  # True

Rozdeľovanie a spájanie

veta = "jablko,banán,čerešňa"
ovocie = veta.split(",")           # ["jablko", "banán", "čerešňa"]

zoznam = ["Pondelok", "Utorok", "Streda"]
text = ", ".join(zoznam)           # "Pondelok, Utorok, Streda"
Tip

split() a join() sú navzájom opačné operácie. split() rozdeľuje reťazec na zoznam, join() spája zoznam do reťazca.

Formátovanie reťazcov — f-strings

F-strings (formátovacie reťazce) sú moderný a čitateľný spôsob vloženia premenných do reťazca:

meno = "Tomáš"
vek = 15
vyska = 170.5

info = f"Volám sa {meno}, mám {vek} rokov a meriam {vyska:.1f} cm."
print(info)
# Volám sa Tomáš, mám 15 rokov a meriam 170.5 cm.

Reťazce sú nemenné

Reťazce v Pythone nemôžeš meniť na mieste — musíš vytvoriť nový reťazec:

slovo = "ahoj"
# slovo[0] = "A"   # CHYBA — reťazce sú nemenné (immutable)

slovo = "A" + slovo[1:]  # vytvorí nový reťazec "Ahoj"
Upozornenie

Opakované spájanie reťazcov v cykle pomocou + je neefektívne pre veľké texty, pretože zakaždým sa vytvorí nový reťazec. Pre veľké množstvo operácií použi zoznam a join().

Cvičné príklady

Čo vypíše tento kód? text = 'informatika'; print(text[4:9].upper())

Zobraziť odpoveď
Vypíše 'MATIK'. text[4:9] vystrihne znaky na indexoch 4, 5, 6, 7, 8 čo je 'matik', a upper() z toho urobí 'MATIK'.

Napíš kód, ktorý zistí, či zadané slovo je palindróm (číta sa rovnako zpredu aj zozadu), napr. 'radar'.

Zobraziť odpoveď
slovo = input('Zadaj slovo: '); if slovo == slovo[::-1]: print('Je palindróm'); else: print('Nie je palindróm') — slovo[::-1] obráti reťazec.