Ha scriptablakban dolgozok, mitől függ, hogy shellben megjeleníti-e a hibajelentést a program?
Figyelt kérdés
Win 7 opr., Python 3.7.2
Egyik alkalommal == helyett = -t írtam véletlenül, és le se futtatta a programot, hanem egy felugró ablakban írta, hogy invalid syntax. Máskor meg kijelzi a hibajelentést a shellben futtatás után. Mitől van, hogy egyszer le se engedi futtatni, máskor meg lefuttatja?
Köszönöm a válaszokat.
2019. márc. 30. 09:51
2/7 A kérdező kommentje:
Python idle scriptablakába írtam.
2019. márc. 30. 12:20
3/7 Ozmium42 válasza:
Nem ismerem, de feltételezem, hogy beépített funkciója van syntax error kiszűrésére. Ezek olyan szarvas hibák, elgépelések szoktak lenni, amik a program futtatása nélkül is kiszűrhetők, és egy idle, ami kifejezetten pythonhoz íródott, ezekre alapból figyel. Ugyanez semantic error esetén nem lehetséges, például egy nem létező változónévre hivatkozol valahol a programban, az nem derül ki addig, amíg meg nem próbálod futtatni.
4/7 A kérdező kommentje:
Ez lehet az oka, köszi!
2019. márc. 30. 14:00
5/7 A kérdező kommentje:
Próbálgattam, és mindig csak az invalid syntaxot, illetve a can't assign to literal-t írta ki. Tehát ja, ahol már az elején le se tudja futtatni, ott felugró ablakban jelzi. Ahol pedig futás után derül ki a hiba, ott meg a shellben jelzi.
2019. márc. 30. 14:03
6/7 tabaki válasza:
Körülbelül igen, de a szavaid alapján nem egyértelmű, hogy világosan látod-e a különbséget. Az első esetben az interpreter még mindenféle futtatás előtt bukkant egy olyan formai rendellenességre, amely nem felel meg a Python szabályainak, tehát nagyjából egy előzetes helyesírás-ellenőrzésről van szó, az ennek során talált hibát írja ki az IDLE ablakos üzenetben. A második esetben viszont szabályos Python-utasításokat használtál, csak éppen a formailag kifogástalan kód valami hülyeséget művel. Ennek megfelelően a Python-értelmező továbblép, megpróbálja végrehajtani a programodat, de közben hibára fut, és ezt a hibaüzenetet kapja vissza az IDLE a shell-ablakban, ahol az egyéb outputok is megjelennek.
7/7 A kérdező kommentje:
Köszönöm :) Érthető, nagyon jól elmagyarázzátok :)
2019. ápr. 1. 12:00
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!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!