Hirdetés
- Redmi Note 13 Pro+ - a fejlődés íve
- Szívós, szép és kitartó az új OnePlus óra
- Xiaomi 15T - reakció nélkül nincs egyensúly
- Samsung Galaxy Watch (Tizen és Wear OS) ingyenes számlapok, kupon kódok
- Garmin Instinct – küldetés teljesítve
- Hivatalos a OnePlus 13 startdátuma
- Nő az eSIM-ek iránti igény
- Telekom mobilszolgáltatások
- Magisk
- Milyen hagyományos (nem okos-) telefont vegyek?
Új hozzászólás Aktív témák
-
AeSDé Team
őstag
Sziasztok!
Próbálok egy MVC modellre hajazó GUI alkalmazást létrehozni, és készítése közben bele futottam pár körkörös import problémába.
Van például egy controller.py fájlban lévő Controller osztályom, ami létrehoz egy app.py fájlban lévő App objektumot, és átad neki egy referenciát önmagára azért, hogy később az App osztály példánya tudjon információt kérni a Controller osztály példányától, és ne kelljen direktben az adatelérési réteghez fordulnia.A program egyszerűsített vázlata:
controller.py:
from app import App
class Controller:
def __init__(self):
self.app = App(self)def get_information(self):
return "some information"app.py:
from controller import Controller
class App:
def __init__(self, controller: Controller):
self.controller = controller
print(self.controller.get_information())Az app.py -ban található Controller import pusztán azt a célt szolgálja, hogy működjön PyCharm-ban a kódkiegészítés, és lássam a Controller osztály metódusait.
Emlékeim szerint Java nyelven simán megtehettem, hogy két osztály egymást importálja és egymásra hivatkoznak, persze egészen addig amíg nem írok végtelen ciklust. Pythonban hogyan érhetem el ugyan ezt a hatást? Azon kívül persze, hogy a két osztályt azonos .py fájlban helyezném el.Amennyiben az app.py definíciójából kihagyom a Controller osztály importját, és a konstruktorában a controller paramétert nem típusosan adom meg, a probléma megszűnik. Én viszont szeretném ha meglenne az az import hogy kódkiegészítést kaphassak az objektumra, ezt milyen módon érhetném el?
Új hozzászólás Aktív témák
- BESZÁMÍTÁS! MSI B450M R5 5500 8GB DDR4 250GB SSD GTX 1050Ti 4GB Zalman S2 TG DeepCool 400W
- BESZÁMÍTÁS! LG 29WP60G-B 29 75Hz IPS UWFHD 1ms monitor garanciával hibátlan működéssel
- GYÖNYÖRŰ iPhone 13 Mini 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS4185
- LG 40U990A-W / 40" Ívelt Nano IPS Black / 5K UHD 120Hz / 2x ThunderBolt 5.0 / Adobe RGB 99%
- Keresek Galaxy S21/S21+/S21 Ultra/S21 FE
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


