- Így fotóz és ennyire melegszik a Galaxy S26 Ultra
- Redmi Note 13 Pro 5G - nem százas, kétszázas!
- Okosóra és okoskiegészítő topik
- Motorola Moto G77 - kis motor, nagy karosszéria
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Beszélgetős beállításkezelést és valós idejű webes keresést kap a Bixby
- Samsung Galaxy S23 Ultra - non plus ultra
- Apple Watch
- Yettel topik
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
Új hozzászólás Aktív témák
-
cousin333
addikt
válasz
Longeye
#3008
üzenetére
Ezt a problémát többféleképpen is meg lehetne oldani.
A célravezető megközelítésszerintem általában az, hogy az osztály egy létező "fizikai" entitásnak a leképezése. Tehát szerintem a diák (Diak néven: Pythonban illik CamelCase-el írni az osztályneveket) pont, hogy alkalmas osztálynak. Ha nem akarsz metódust, csak adattárolást, akkor mondjuk lehetne NamedTuple is osztály helyett, de aztán később még rájöhetsz, hogy mégis kéne metódus, szóval én maradnék az osztálynál. Ha már mindenáron (főleg) adatokat akarsz, akkor olvass utána a Dataclass-oknak. Így egyszerűben adhatsz hozzá további attribútumokat, például, hogy mikor kezdte a sulit, éppen beteg-e stb.
Én viszont olyan osztályt nem csinálnék, hogy "diákok", meg úgy általában többes számban írt entitások. Ezeket inkább Diák-ok listájaként tárolnám. Ha mindenképpen csoportot szeretnél, metódusokkal, akkor inkább legyen a neve Csoport, Osztály, esetleg Iskola, vagy valami általános gyűjtőfogalom. Itt viszont nem úgy "tárolnám be" a diákokat, ahogy te tetted, hanem magát a példányosított Diák objektumot "adnám oda". Ha type hintet is használsz, akkor a fejlesztőeszköz fel fogja ajánlani a megfelelő attribútumokat és metódusokat. A példáddal:
from dataclasses import dataclass@dataclassclass Diak:om: intnev: strclass Osztaly(object):def __init__(self):self.diakok= []def uj_diak(self, diak: Diak):self.diakok.append(diak)A diákok hozzáadó függvényét amúgy így is csinálhatod (a te példád alapján):
def ujdiak(self, datum, *args):self.lista.append(diak(*args))Ezzel a módszerrel mindegy, hogy a "diak" osztálynak éppen mennyi paramétere van, mindet átadja a konstruktornak.
Új hozzászólás Aktív témák
- Gyúrósok ide!
- EA Sports WRC '23
- Így fotóz és ennyire melegszik a Galaxy S26 Ultra
- Feltörték a regisztrációmat vagy elvesztettem a belépési emailcímet, 2FA-t
- Ügyesen előzi meg a 12V-2x6 tápkonnektor leégését a Dell
- Azonnali informatikai kérdések órája
- Redmi Note 13 Pro 5G - nem százas, kétszázas!
- The Division 2 (PC, XO, PS4)
- Okos Otthon / Smart Home
- Elektromos autók - motorok
- További aktív témák...
- HIBÁTLAN iPhone 12 Pro 128GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS4493
- AKCIÓ! Asus TUF A16 2024 FA607NUG Gamer notebook - R7 7445HS 16GB DDR5 1TB SSD RTX 4050 6GB
- Samsung Galaxy A35 5G 6/128GB / 12 hó jótállás
- Keresünk iPhone 13/13 Mini/13 Pro/13 Pro Max
- HP EliteBook 840 G9 i7-1265U 16GB 256GB 14" FHD+ 1 év teljeskörű garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

