Röviden tömören: szöveg. De egy string lehet akár több szavas is… pelda=”Több szavas string” A string tartalmát idézőjelek vagy aposztrófok közé kell tenni!
A stringek karakterein végig tudunk menni, hasonlóan egy listához. A számozásuk is ugyanúgy működik, a 0.indexű elem a string első „betűje”.
a = "Hello, World!" print(a[0]) for x in "szöveg": print(x)
len() String hosszának meghatározása.
a = "Hello, World!" print(len(a))
in Segítségével meg tudjuk nézni, adott string szerepel-e egy másikban? A kis és nagybetűkre figyelni kell! Természetesen itt is használható a not in
txt = "Szeretem a programozást!"
print("szeret" in txt) #false, mert kis-nagybetűt megkülönbözteti a Python!
String összefűzése: + művelettel.
a = "Buda" b = "pest" c = a + b print(c)
String darabolása – hasonlóan működik, mint a listáknál, meg lehet adni mettől-meddig akarjuk kiíratni. Itt is használható a : is, és a negatív indexelés is.
b = "Békéscsaba" print(b[0:5]) #Békés print(b[:5]) #Békés print(b[5:]) #csaba print(b[-5:-3]) #cs
Megadható 3. paraméter is, ami a lépésközt jelenti. pl. minden 2. betűt írjunk csak ki
b = „Békéscsaba”; print(b[::2]) Bksaa
String visszafelé kiíratása: print(b[::-1]) abascsékéB
lower() és upper() String átalakítása kisbetűssé és nagybetűssé. Ennek főleg keresésnél van haszna, célszerű átalakítani a keresett szót és azt is amiben keresünk végig egyformára.
casefold() Kisbetűssé alakítja a szöveget. „Erősebb”, mint a lower.
a = "Békéscsaba!" print(a.upper()) print(a.lower())
capitalize() A string első karakterét nagybetűsre alakítja.
szoveg = "szeretek programozni de nagyon!" x = szoveg.capitalize() print (x)
strip() Eltávoltja a szöveg előtti és utáni szóközöket. De megadható neki karakter is, amit szeretnénk eltávolítani.
a = " Szeretem a Pythont! " print(a.strip())
Példa: txt = „!!!Szia!”;
print(txt.strip(„!”)) # kimenet: Szia
replace() Ki tudjuk vele cserélni a megadott stringe(ke)t másikra. Nem írja felül a változó értékét!
a = "bába"
print(a.replace("á", "a")) #baba
a = "Békéscsaba"
print(a.replace("Békés", "Pilis")) #Piliscsaba
print(a) #Békéscsaba
split() Segítségével darabolni tudjuk a megadott string alapján a szöveget.
a = "első, második!"
b = a.split(",")
print(a)
print(b)
format() Segítségével a numerikus típusú változók értékét is ki tudjuk íratni szövegként. Hasonlóan a c#-hoz itt is használhatunk helyörzőket {0}{1}… számozásuk 0-val kezdődik.
mennyiseg = 3
ar = 300
rendeles = " {0} db tojás {1} forint?!"
print(rendeles.format(mennyiseg, ar))
count() Megszámolhatjuk adott string hányszor tartalmaz egy másikat. Meg lehet adni neki azt is, mettől-meddig keressen!
txt = "A lényeg lényegének lényege lényegében lényegtelen!"
x = txt.count("lényeg")
print(x) #5
x = txt.count("lényeg", 0, 20)
print(x) #2
Ellenőrző metódusok (startswith(), endswith(), isalpha(), isdigit(), isalnum(), isspace() )
startswith() és endswith(): Ellenőrzi, hogy a string adott résszel kezdődik, vagy végződik-e.
Példa: txt = „Hello World”; print(txt.startswith(„Hello”)) $\rightarrow$ True
isalpha(): Ellenőrzi, hogy a string összes karaktere betű-e (nem tartalmaz számot, szóközt, írásjelet stb.).
isdigit(): Ellenőrzi, hogy a string összes karaktere szám-e?
isalnum(): Ellenőrzi, hogy a string összes karaktere betű vagy szám-e (azaz nem tartalmaz speciális karaktert vagy szóközt).
isspace(): Ellenőrzi, hogy a string csak szóközökből áll-e?
Stringek formázása (Formatted String Literals)
Használat: A stringet egy f betűvel kell kezdeni, és a beillesztendő változókat/kifejezéseket kapcsos zárójelek közé kell tenni a stringen belül.
|
1 2 3 4 |
mennyiseg = 3 ar = 300 print(f"{mennyiseg} db tojás {ar} forint?!") # Kimenet: 3 db tojás 300 forint?! |
Példák:
Készíts felhasználó nevet! A felhasználói név a vezetéknév és a keresztnév első 3 betűjéből, illetve a születési hónapból és napból álljon! pl: Teszt Elek 1999.05.06 >> tesele0506
a = "1999.05.06."
b = "Teszt Elek"
n = b.split(" ") # szétvágom a szóköznél
n1 = n[0] # vezetéknév
n2 = n[1] # keresznév
n1 = n1[:3] # vezetéknév első 3 betűje
n2 = n2[:3] # keresznév első 3 betűje
datum = a.split(".") # dátum bontása a pontoknál
ho = datum[1] # hónap
nap = datum[2] # nap
felhasznalo = n1+n2+ho+nap
felhasznalo = felhasznalo.lower()
print(felhasznalo)


Frissítve: 2025.11.05.
