Python alapismeretek

Változók, elemi adattípusok

Számok

  • Integer: x = 1
  • Float: y = .2, z = 5.6

Műveletek:

  • + Összeadás
  • - Kivonás
  • * Szorzás
  • / Osztás
  • % Maradékos osztás
  • ** Hatványozás
  • // Egész osztás

Szöveg

  • String: 'szöveg', "szöveg"

    '''
    Több
    soros
    szöveg
    '''
    """
    Több
    soros
    szöveg
    """

Nincs különbség ' és " között, egyedül az escapingben jelenthet változást. ("\"" == '"')

Formázás: f-stringek használatával:

x = 2
y = "Hello, World!"
z = f"x = {x}; Üzenet: {y}"
print(z) # x = 2; Üzenet: Hello, World!

Logikai érték

  • Boolean:

    x = True
    # vagy
    y = False

Műveletek:

  • and logikai ÉS
  • or logikai VAGY
  • not logikai INV

Lista

Rendezett, módosítható, lehetnek duplikátumok

lista = ['ez', 1, 'lista']

Darabolás (slicing):

print(lista[0])  # 'ez'
print(lista[-1]) # 'lista'
print(lista[1:]) # [1, 'lista']

Szintaxis: [x:y:z], ahol

  • x: Kijelölés kezdete (inkluzív)
  • y: Kijelölés vége (exkluzív)
  • z: Lépés (pl. lista[::-1] a lista megfordított változatát adja vissza)

x, y és z is opcionálisak. lista[::] klónt készít a listáról (pointer átadása helyett)

Műveletek:

lista.append('!')                   # Elem hozzáadása a lista végére
lista.insert(2, 'hosszú')           # Elem beszúrása a megadott indexre
lista.extend(['Hello', 'World'])    # Lista kiegészítése egy másik lista elemeivel

x = lista.pop() # Utolsó elem kiolvasása és eltávolítása
# x == 'World'

lista.remove('hosszú') # Lista elemének törlése érték alapján

del lista[0] # Lista elemének törlése index alapján

"érték" in lista

Tuple

Rendezett, nem módosítható, lehetnek duplikátumok

t = ("apple", "banana", "cherry")

Halmaz (Set)

Rendezetlen, elemei nem módosíthatóak, nem lehetnek duplikátumok

h = {1, 2, 3, 4, 5}
# VAGY
h = set([1, 2, 3, 4, 5])

h.add(6) # h == {1, 2, 3, 4, 5, 6}
h.add(1) # h == {1, 2, 3, 4, 5, 6}

h.remove(2)  # Elem eltávolítása érték alapján. Ha nem létezik, hibával tér vissza
h.discard(4) # Elem eltávolítása érték alapján. Ha nem létezik, akkor sem tér vissza hibával

Halmazműveletek

Könyvtár (Dictionary)

Rendezett (Python 3.7 óta), módosítható, nem lehetnek duplikátumok (kulcsok között)

Adatot tárol kulcs-érték párokként.

d = {
    "name": "PG",
    "age": 150
}

x = d.get("name") # x == "PG"

d["year"] = 2024
# d == {"name": "PG", "age": 150, "year": 2024}

y = "name" in d # y == True
z = 150 in d    # z == False

Általános műveletek

szoveg = "asd123"

len(szoveg) # 6
type(szoveg) # <class 'string'>

Irányítási elemek (flow control)

Elágazás

x = 4

if x < 2:
    print("Kisebb, mint 2")
elif x % 2 == 0:
    print("Nem kisebb, mint 2, de páros")
else:
    print("Egyéb eset")

Iteráló ciklus

for c in "Hello":
    print(c)

for i in range(10):
    print(i)
# 0 - 9

Elöltesztelő ciklus

i = 1
while i < 10:
    print(i)
    i += 1
szam = 0
while True:
    bemenet = input("Adjon meg egy számot!")
    if bemenet.isnumeric():
        szam = int(bemenet)
        break

Eljárások

def f(x):
    print(x * 2)

f(3) # 6

def f2(x):
    return x * 2

y = f2(3)
print(y) # 6