### String Metódusok A stringek (szövegek) sok hasznos beépített metódussal rendelkeznek. Ezek a metódusok általában nem módosítják az eredeti stringet, hanem egy új stringet adnak vissza. - **`len(string)`**: Visszaadja a string hosszát. ```python szoveg = "Hello Világ!" hossz = len(szoveg) # 12 ``` - **`string.lower()` / `string.upper()`**: Kisbetűsre / nagybetűsre alakítja a stringet. ```python nev = "Péter" kisbetus = nev.lower() # "péter" nagybetus = nev.upper() # "PÉTER" ``` - **`string.strip()`**: Eltávolítja a kezdő és záró whitespace karaktereket (szóköz, tab, újsor). ```python szam = " 123 " tiszta_szam = szam.strip() # "123" ``` - **`string.replace(old, new)`**: Lecseréli az `old` részstring összes előfordulását `new` részstringre. ```python mondat = "Alma, körte, alma." uj_mondat = mondat.replace("alma", "szilva") # "Szilva, körte, szilva." ``` - **`string.split(separator)`**: Felosztja a stringet egy listává a megadott `separator` alapján. Ha nincs `separator` megadva, whitespace alapján oszt. ```python lista_szoveg = "alma,körte,szilva" gyumolcsok = lista_szoveg.split(",") # ['alma', 'körte', 'szilva'] szavak = "Ez egy mondat" reszek = szavak.split() # ['Ez', 'egy', 'mondat'] ``` - **`separator.join(iterable)`**: Összefűzi egy iterable (pl. lista) elemeit a `separator` stringgel. ```python szavak = ["Hello", "Világ"] egyesitett = " ".join(szavak) # "Hello Világ" ``` - **`string.startswith(prefix)` / `string.endswith(suffix)`**: Ellenőrzi, hogy a string egy adott előtaggal / utótaggal kezdődik-e / végződik-e. ```python fajlnev = "dokumentum.txt" kezdodik_d = fajlnev.startswith("dok") # True vegzodik_txt = fajlnev.endswith(".txt") # True ``` - **`string.find(substring)`**: Visszaadja a `substring` első előfordulásának indexét, vagy `-1`-et, ha nem található. ```python szo = "banán" index = szo.find("an") # 1 ``` ### Lista Metódusok A listák módosítható (mutable) adatszerkezetek, ezért a metódusaik gyakran az eredeti listán végeznek módosításokat. - **`len(lista)`**: Visszaadja a lista elemeinek számát. ```python szamok = [1, 2, 3, 4] hossz = len(szamok) # 4 ``` - **`lista.append(elem)`**: Hozzáad egy elemet a lista végéhez. ```python gyumolcsok = ["alma", "körte"] gyumolcsok.append("szilva") # ['alma', 'körte', 'szilva'] ``` - **`lista.extend(iterable)`**: Hozzáadja egy iterable (pl. másik lista) összes elemét a lista végéhez. ```python lista1 = [1, 2] lista2 = [3, 4] lista1.extend(lista2) # [1, 2, 3, 4] ``` - **`lista.insert(index, elem)`**: Beszúr egy elemet a megadott indexre. ```python szamok = [1, 3, 4] szamok.insert(1, 2) # [1, 2, 3, 4] ``` - **`lista.remove(elem)`**: Eltávolítja az első előfordulását a megadott `elem`-nek. Hibát dob, ha az elem nincs a listában. ```python szinek = ["piros", "kék", "zöld", "kék"] szinek.remove("kék") # ['piros', 'zöld', 'kék'] ``` - **`lista.pop(index)`**: Eltávolítja és visszaadja a megadott indexen lévő elemet. Ha nincs index megadva, az utolsó elemet távolítja el és adja vissza. ```python szamok = [10, 20, 30] utolso = szamok.pop() # 30, szamok: [10, 20] elso = szamok.pop(0) # 10, szamok: [20] ``` - **`lista.index(elem)`**: Visszaadja a megadott `elem` első előfordulásának indexét. Hibát dob, ha az elem nincs a listában. ```python betuk = ['a', 'b', 'c'] idx = betuk.index('b') # 1 ``` - **`lista.count(elem)`**: Visszaadja, hányszor fordul elő a megadott `elem` a listában. ```python szamok = [1, 2, 2, 3, 2] db = szamok.count(2) # 3 ``` - **`lista.sort()`**: Rendezés a listán belül, alapértelmezetten növekvő sorrendben. ```python rendezetlen = [3, 1, 4, 1, 5] rendezetlen.sort() # [1, 1, 3, 4, 5] ``` - **`lista.reverse()`**: Megfordítja a lista elemeinek sorrendjét. ```python forditott = [1, 2, 3] forditott.reverse() # [3, 2, 1] ``` - **`sorted(iterable)`**: Visszaadja a rendezett listát, de nem módosítja az eredeti iterable-t. ```python eredeti = [3, 1, 2] rendezett_uj = sorted(eredeti) # [1, 2, 3], eredeti: [3, 1, 2] ``` ### Dictionary (Szótár) Metódusok A szótárak kulcs-érték párokat tárolnak. - **`len(szotar)`**: Visszaadja a kulcs-érték párok számát. ```python diak = {"nev": "Anna", "kor": 20} hossz = len(diak) # 2 ``` - **`szotar.keys()`**: Visszaadja a szótár kulcsait egy `dict_keys` objektumként. ```python kulcsok = diak.keys() # dict_keys(['nev', 'kor']) ``` - **`szotar.values()`**: Visszaadja a szótár értékeit egy `dict_values` objektumként. ```python ertekek = diak.values() # dict_values(['Anna', 20]) ``` - **`szotar.items()`**: Visszaadja a szótár kulcs-érték párjait tuple-ök listájaként egy `dict_items` objektumként. ```python elemek = diak.items() # dict_items([('nev', 'Anna'), ('kor', 20)]) ``` - **`szotar.get(key, default)`**: Visszaadja a `key`-hez tartozó értéket. Ha a `key` nem található, a `default` értéket adja vissza (vagy `None`, ha nincs `default` megadva). ```python nev = diak.get("nev") # "Anna" cim = diak.get("cim", "Nincs adat") # "Nincs adat" ``` - **`szotar.pop(key, default)`**: Eltávolítja a `key`-hez tartozó kulcs-érték párt és visszaadja az értéket. Ha a `key` nem található, hibát dob (vagy a `default` értéket adja vissza, ha meg van adva). ```python kor = diak.pop("kor") # 20, diak: {'nev': 'Anna'} ``` - **`szotar.update(other_dict)`**: Hozzáadja az `other_dict` elemeit a szótárhoz. Ha egy kulcs már létezik, az értéke frissül. ```python diak = {"nev": "Anna", "kor": 20} plusz_adat = {"varos": "Budapest", "kor": 21} diak.update(plusz_adat) # {'nev': 'Anna', 'kor': 21, 'varos': 'Budapest'} ``` ### Set (Halmaz) Metódusok A halmazok rendezetlen, egyedi elemeket tartalmazó gyűjtemények. - **`len(halmaz)`**: Visszaadja a halmaz elemeinek számát. ```python szamok = {1, 2, 3} hossz = len(szamok) # 3 ``` - **`halmaz.add(elem)`**: Hozzáad egy elemet a halmazhoz. Ha az elem már létezik, nem történik semmi. ```python gyumolcsok = {"alma", "körte"} gyumolcsok.add("szilva") # {'alma', 'körte', 'szilva'} gyumolcsok.add("alma") # {'alma', 'körte', 'szilva'} (nincs változás) ``` - **`halmaz.remove(elem)`**: Eltávolítja az `elem`-et a halmazból. Hibát dob, ha az elem nincs a halmazban. ```python szamok = {1, 2, 3} szamok.remove(2) # {1, 3} ``` - **`halmaz.discard(elem)`**: Eltávolítja az `elem`-et a halmazból, de nem dob hibát, ha az elem nincs a halmazban. ```python szamok = {1, 3} szamok.discard(1) # {3} szamok.discard(5) # {3} (nincs változás, nincs hiba) ``` - **`halmaz.union(other_set)` / `halmaz | other_set`**: Visszaadja a két halmaz unióját (egyesítését). ```python a = {1, 2, 3} b = {3, 4, 5} unio = a.union(b) # {1, 2, 3, 4, 5} ``` - **`halmaz.intersection(other_set)` / `halmaz & other_set`**: Visszaadja a két halmaz metszetét (közös elemek). ```python metszet = a.intersection(b) # {3} ``` - **`halmaz.difference(other_set)` / `halmaz - other_set`**: Visszaadja a halmaz azon elemeit, amelyek nincsenek benne az `other_set`-ben. ```python kulonbseg = a.difference(b) # {1, 2} ``` - **`halmaz.symmetric_difference(other_set)` / `halmaz ^ other_set`**: Visszaadja a két halmaz szimmetrikus különbségét (azok az elemek, amelyek csak az egyik halmazban vannak benne). ```python szimm_kul = a.symmetric_difference(b) # {1, 2, 4, 5} ``` ### Általános Beépített Függvények Néhány gyakran használt beépített függvény, amelyek különböző adattípusokkal működnek. - **`print(*objects, sep=' ', end='\n')`**: Kiírja az objektumokat a konzolra. ```python print("Hello", "Világ", sep='-', end='!\n') # "Hello-Világ!" ``` - **`input(prompt)`**: Bekér egy stringet a felhasználótól. ```python nev = input("Mi a neved? ") # A felhasználó beírja a nevét ``` - **`int(object)` / `float(object)` / `str(object)`**: Adattípus konverziók. ```python szam_str = "123" szam_int = int(szam_str) # 123 szam_float = float("3.14") # 3.14 szam_vissza_str = str(szam_int) # "123" ``` - **`max(iterable)` / `min(iterable)`**: Visszaadja a legnagyobb / legkisebb elemet egy iterable-ből. ```python szamok = [1, 5, 2, 8] maximum = max(szamok) # 8 minimum = min(szamok) # 1 ``` - **`sum(iterable)`**: Összegzi egy numerikus iterable elemeit. ```python osszeg = sum(szamok) # 16 ``` - **`abs(number)`**: Visszaadja egy szám abszolút értékét. ```python abszolut = abs(-5) # 5 ``` - **`round(number, ndigits)`**: Lekerekíti egy számot. ```python kerekitett = round(3.14159, 2) # 3.14 ``` - **`type(object)`**: Visszaadja egy objektum típusát. ```python tipus = type("hello") # ```