A programozásban gyakran kell szövegeket (stringeket) módosítani, vizsgálni vagy feldolgozni. A Python számos beépített függvényt nyújt erre. Ezek segítségével könnyebben tudunk szövegekkel dolgozni.
A string egy szöveg, amelyet idézőjelek között írunk:
szoveg = "Sziasztok!"
nev = 'Péter'
hosszu = """Ez egy
több soros
szöveg"""
| Függvény | Mit csinál? | Példa |
|---|---|---|
.lower() |
Kisbetűssé alakít | "HELLO".lower() → "hello" |
.upper() |
Nagybetűssé alakít | "hello".upper() → "HELLO" |
.capitalize() |
Első betű nagy, többi kis | "hello world".capitalize() → "Hello world" |
.title() |
Minden szó nagy kezdőbetűvel | "hello world".title() → "Hello World" |
.strip() |
Eleje és vége szóközeit eltávolítja | " hello ".strip() → "hello" |
.replace() |
Szövegrészt másikra cserél | "hello".replace("l", "L") → "heLLo" |
.split() |
Szöveget szavakra darabolja | "hello world".split() → ["hello", "world"] |
.join() |
Listát szöveggé fűzi össze | "-".join(["a", "b", "c"]) → "a-b-c" |
.find() |
Megkeresi a szöveg helyét | "hello".find("l") → 2 |
.count() |
Megszámolja az előfordulásokat | "hello".count("l") → 2 |
.startswith() |
Ellenőrzi, hogy mivel kezdődik | "hello".startswith("he") → True |
.endswith() |
Ellenőrzi, hogy mivel végződik | "hello".endswith("lo") → True |
.isdigit() |
Ellenőrzi, hogy csak számjegy-e | "123".isdigit() → True |
.isalpha() |
Ellenőrzi, hogy csak betű-e | "hello".isalpha() → True |
.lower() és .upper() — Betűméreteknev = "PéTER"
print(nev.lower()) # péter
print(nev.upper()) # PÉTER
# Miért hasznos?
# Ha olyan szöveget szeretnél összehasonlítani,
# amelynek a betűmérete nem számít:
felhasznalo_input = "Budapest"
if felhasznalo_input.lower() == "budapest":
print("Helyes város!")
.split() — Szöveg feldarabolásamondat = "Az alma piros és édes"
szavak = mondat.split()
print(szavak) # ['Az', 'alma', 'piros', 'és', 'édes']
# Más karakterrel is lehet darabolni:
szamok = "1,2,3,4,5"
szamok_listaja = szamok.split(",")
print(szamok_listaja) # ['1', '2', '3', '4', '5']
.join() — Lista szöveggé alakításaszavak = ["Hello", "világ", "!"]
# Összefűzés szóközzel:
eredmeny = " ".join(szavak)
print(eredmeny) # "Hello világ !"
# Összefűzés kötőjellel:
szavak2 = ["alma", "körte", "banán"]
eredmeny2 = "-".join(szavak2)
print(eredmeny2) # "alma-körte-banán"
.replace() — Csereszoveg = "A macska szeret aludni"
uj_szoveg = szoveg.replace("macska", "kutya")
print(uj_szoveg) # "A kutya szeret aludni"
# Több karaktert is lehet:
szoveg2 = "aaabbbccc"
uj_szoveg2 = szoveg2.replace("a", "x")
print(uj_szoveg2) # "xxxbbbccc"
.find() — Keresésszoveg = "Hello world"
# Hol van az "o"?
pozicio = szoveg.find("o")
print(pozicio) # 4
# Ha nem találja meg:
pozicio2 = szoveg.find("xyz")
print(pozicio2) # -1
.count() — Számlálásszoveg = "banán banán banán"
# Hányszor fordul elő "banán"?
darab = szoveg.count("banán")
print(darab) # 3
# Karakterek számlálása:
szoveg2 = "mississippi"
i_ok = szoveg2.count("i")
print(i_ok) # 4
szoveg = "12345"
szam_szoveg = szoveg.isdigit()
print(szam_szoveg) # True
szoveg2 = "hello123"
csak_betuk = szoveg2.isalpha()
print(csak_betuk) # False
szoveg3 = "hello"
kezdodike_h = szoveg3.startswith("he")
print(kezdodike_h) # True
# Feladat: Számláld meg a magánhangzókat!
szoveg = "Python"
szoveg_kis = szoveg.lower()
maganhangzok = "aeiouáéíóöőüű"
szamlalo = 0
for karakter in szoveg_kis:
if karakter in maganhangzok:
szamlalo += 1
print(f"Magánhangzók száma: {szamlalo}") # 1
# Feladat: Szavak szűrése hossz alapján
mondat = "Az apple alma és körte"
szavak = mondat.split()
hosszu_szavak = []
for szo in szavak:
if len(szo) > 3:
hosszu_szavak.append(szo)
print(hosszu_szavak) # ['apple', 'alma', 'körte']
Szöveg hossza (karakterek száma):
szoveg = "Hello"
hossza = len(szoveg)
print(hossza) # 5
szavak = szoveg.split()
print(len(szavak)) # 1
| Mit szeretnél csinálni? | Használd ezt: |
|---|---|
| Szöveget feldarabolni | .split() |
| Szavakat újra összerakni | .join() |
| Nagybetűs/kisbetűs alakra hozni | .upper() / .lower() |
| Szövegrészt cserélni | .replace() |
| Szöveg hosszát tudni | len() |
| Megtalálni egy részt | .find() vagy .count() |
| Ellenőrizni valamit | .startswith(), .endswith(), .isdigit() stb. |