Kezdőoldal » Számítástechnika » Programozás » Nem fut le a Python programom....

Nem fut le a Python programom. Segítene valaki?

Figyelt kérdés

class termek:

termekara: int = 2300

kedvezmenylevonas: int = 600


def __init__ (self, kod, nev, regi_ar, ar):

self.kod = kod

self.nev = nev

self.regi_ar = regi_ar

self.ar = ar

def learaz (self, szazalek):

self.regi_ar = self.ar

uj_ar = self.ar * (1-szazalek/100)

self.ar = round (uj_ar)

@classmethod

def kedvezmenyes_ar (cls):

return cls.termekara - cls.kedvezmenylevonas

@staticmethod

def kiiras (kod, nev, ar):

return f'{nev} {kod} {regi_ar} =>{ar}'

def __str__ (self):

kiirando: (self.kod, self.nev, self.ar, self.regi_ar)

return f'{kiirando}'

UsbHub = termek ('U03', 'Usb 3.0 HUB 4 csatlakozóval', 3000, 4000)

print (UsbHub.nev)

print ('Kód:', UsbHub.kod)

print (termek.kiiras)



Lefut, de az utolsó sorban egy nagy kód-számsort kapok.

<function termek.kiiras at 0x00000000055B1288>



Ja, és mindenhol bentebb kezdtem, cxsak a gyk nem engedi így.



2021. júl. 29. 10:37
 1/10 anonim ***** válasza:

1, Valami jobb helyre tölts fel a kódot.

2, print (termek.kiiras) ?? de megint miért termek? az osztály <> egyed., előtte jól írod, másrészt ez nem attributum, hanem metódus, annak meg paraméterei is vannak. def kiiras (kod, nev, ar) hol adod meg ezeket? stb..

2021. júl. 29. 11:35
Hasznos számodra ez a válasz?
 2/10 anonim ***** válasza:

Valószínű ilyesmit szerettél volna odaírni:

UsbHub.kiiras('kod','nev',500)

de ekkor se lesz jó, .. mivel return f'{nev} {kod} {regi_ar} =>{ar}' , nade a regi_ar nincs meghatározva.. de nem is értem minek kell ez miért nem self-el dolgozol..

2021. júl. 29. 11:37
Hasznos számodra ez a válasz?
 3/10 anonim ***** válasza:
Egy fuggvenyt hivsz meg, nem pedig egy attributumra hivatkozol, szoval "print (termek.kiiras)" helyett: "print (termek.kiiras())"
2021. júl. 29. 11:44
Hasznos számodra ez a válasz?
 4/10 anonim ***** válasza:
100%
De tényleg kezedened kellene valamit a kódmegosztással, mert ez igy elég fájdalmas.
2021. júl. 29. 11:44
Hasznos számodra ez a válasz?
 5/10 anonim ***** válasza:
Ez az egész borzasztóan van modellezve. A kiiras miért staticmethod? Mi értelme van a regi arnak? Mi értelme, hogy termék ára és a kedvezmény levonás class attribútum? Gondolj bele, lesz egy másik termék objektumod, és kíváncsi vagy, hogy mennyi a kedvezményes ára, de nem fogod megtudni, mert mindig ugyan azt a két, inicializációtól független értéket fogja kivonni egymásból. :D
2021. júl. 29. 11:56
Hasznos számodra ez a válasz?
 6/10 anonim ***** válasza:
72%

0 comments, 0 indentation, 0 effort

Szoval nem.

2021. júl. 29. 11:59
Hasznos számodra ez a válasz?
 7/10 anonim ***** válasza:
67%

1. Máskor a kódot töltsd fel ide:

[link]

és csak a linket másold. Pythonnál különösen fontosak a szóközök, az igazítás.


2. A termek.kiiras-t printeled ki, ami egy függvény. Ezért írja ki. Te valószínűleg az termek.kiiras(...) eredményét szeretnéd látni.


Én a helyedben a __str()__ metódust csinálnám meg rendesen, az visszaadja az objektum string reprezentációját, amit utána printtel ki tudsz íratni így: print(UsbHub)

Ehhez a kiirando sor helyett hívd a statikus termerk.kiirast a 4 (!) paramétereddel (csak hármat vár, a regi_ar-at nem adod oda).


Belejavítottam. Így gondoltad?


[link] ELtSUw0t

2021. júl. 29. 12:00
Hasznos számodra ez a válasz?
 8/10 anonim ***** válasza:
71%

Bocs, nem jött össze nekem se a link megosztás :)

[link]

2021. júl. 29. 12:01
Hasznos számodra ez a válasz?
 9/10 anonim ***** válasza:
47%
#8-asnak adtam egy zöldet, ha már egyszer ennyire összerakta.
2021. júl. 29. 14:17
Hasznos számodra ez a válasz?
 10/10 A kérdező kommentje:
Köszönöm a válaszokat.
2021. júl. 29. 16:18

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!