Sobes.tech
Junior

Mi az a statikus változó Pythonban?

sobes.tech MI

Válasz az MI-től

Pythonban a statikus változó egy olyan változó, amely a osztályhoz tartozik, nem pedig egy konkrét példányhoz. Értéke megosztott az összes példány között.

Fő jellemzők:

  • Hatókör: Az osztályon belül.
  • Élettartam: A program futása során folyamatosan létezik.
  • Hozzáférés: Elérhető mind az osztály neve, mind az osztály példánya által (bár az osztály neve szerinti hozzáférés előnyösebb a statikus természet jelzésére).

Használati példa:

class MyClass:
    # Statikus változó
    static_variable = 10

    def __init__(self, instance_variable):
        # Példány változó
        self.instance_variable = instance_variable

# Hozzáférés a statikus változóhoz az osztály neve segítségével
print(MyClass.static_variable)

# Példányok létrehozása
obj1 = MyClass(20)
obj2 = MyClass(30)

# Hozzáférés a statikus változóhoz példányokon keresztül
print(obj1.static_variable)
print(obj2.static_variable)

# A statikus változó módosítása az osztály neve segítségével
MyClass.static_variable = 15

# Az érték megváltozott minden példány számára
print(obj1.static_variable)
print(obj2.static_variable)

Ebben a példában a static_variable egy statikus változó. Egyetlen példányban létezik az egész MyClass osztály számára, és értéke megosztott az obj1 és obj2 objektumok között. A változtatás az osztály nevével MyClass.static_variable = 15 minden példányban megjelenik.