Ú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
- iPhone 13 mini 128GB silverlight független
- 15.gen! Intel Core ULTRA 9 285K (24mag!) +hűtött VRM-es Z890 lap! GAR/SZÁMLA (Te nevedre kiállítva)!
- Samsung Galaxy S23 Ultra 5G 256Gb Dual, kártya független, fehér színben
- Apple iphone 16 128Gb, kártya független, fehér színben
- Apple iPhone 12 Pro 128Gb, kártya független, arany színben
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB DDR5 RAM RTX 5070 12GB GAMER termékbeszámítással
- GYÖNYÖRŰ iPhone 13 Mini 256GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS4426, 100% AKKSI
- Microsoft Windows, Office & Vírusirtók: Akciók, Azonnali Szállítás, Garantált Minőség, Garancia!
- Lenovo Yoga 7 2-in-1 OLED Ryzen 7 8840HS 16GB /1 TB SSD/ gari 10 hónap
- iPhone 17 Pro Max 256 GB Deep Blue - Bontatlan !! www.stylebolt.hu - Apple eszközök - Számlás
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest

