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.