Programm Ende bzw. Abbruch Befehl

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Neo
User
Beiträge: 18
Registriert: Donnerstag 6. Juli 2006, 14:24

Hallo zusammen,

kurze Frage zu ner Syntax.

Ich suche bzw. brauche einen Programmabbruch command um eine laufende Sitzung (script) zu schließen. Z.B. bei einer If-Bedingung.
In der Art wie der :EOF im DOS.

Bsp:

Code: Alles auswählen

.....

deff Test(n):
       if n == 2000:
          print 'blablabla'
       else:
          [b]PROGRAMMABBRUCH[/b]

.....
Thx

Neo
Zuletzt geändert von Neo am Freitag 7. Juli 2006, 13:57, insgesamt 1-mal geändert.
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

1.) Code in Python-Tags setzen
2.)

Code: Alles auswählen

import sys
sys.exit(0)
Neo
User
Beiträge: 18
Registriert: Donnerstag 6. Juli 2006, 14:24

Danke :)
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

wenn du spaß an der freude hast, kannst du auch einen error raisen.
(

Code: Alles auswählen

else:
    raise SystemError, "this is to exit this programm"
)

//edit: :-) natürlich habe ich mich verschrieben^^
ich meine natürlich

Code: Alles auswählen

raise SystemExit
^^
Zuletzt geändert von murph am Freitag 7. Juli 2006, 17:31, insgesamt 1-mal geändert.
http://www.cs.unm.edu/~dlchao/flake/doom/
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

murph hat geschrieben:

Code: Alles auswählen

raise SystemError, "this is to exit this programm"
Hi murph!

<flüster>raise SystemExit()</flüster>

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
SigMA
User
Beiträge: 181
Registriert: Sonntag 4. April 2004, 13:27
Wohnort: Freiburg
Kontaktdaten:

generell sollte man aber immer versuchen das Programm so auslaufen zu lassen, dass kein sys.exit() benötigt wird!

SigMA
Leichtdio.de - Das Kreativ-Blog
http://www.leichtdio.de
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

außerdem halte ich es für etwas sc****e, nur, um ein Programm zu beenden, sys zu importieren, wie ich es schon oft gesehen habe.
deshalb raise ich lieber irgendwas, außer sys ist sowieso schon 'drin'.
http://www.cs.unm.edu/~dlchao/flake/doom/
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

murph hat geschrieben:nur um ein Programm zu beenden, sys zu importieren
Hi murph!

sys ist immer da. Es ist direkt ins Python eingebaut. Es ist nur nicht im Namensraum. Bei ``import sys`` muss Python nicht extra auf die Festplatte zugreifen.

Code: Alles auswählen

>>> import sys
>>> sys
<module 'sys' (built-in)>
>>> import shutil
>>> shutil
<module 'shutil' from 'C:\Python24\lib\shutil.pyc'>
>>> sys.builtin_module_names
('__builtin__', '__main__', '_bisect', '_codecs', '_codecs_cn',
'_codecs_hk', '_codecs_iso2022', '_codecs_jp', '_codecs_kr', 
'_codecs_tw', '_csv', '_heapq', '_hotshot', '_locale', '_multibytecodec', 
'_random', '_sre', '_subprocess', '_symtable', '_weakref', '_winreg', 
'array', 'audioop', 'binascii', 'cPickle', 'cStringIO', 'cmath', 'collections', 
'datetime', 'errno', 'exceptions', 'gc', 'imageop', 'imp', 'itertools', 
'marshal', 'math', 'md5', 'mmap', 'msvcrt', 'nt', 'operator', 'parser', 
'regex', 'rgbimg', 'sha', 'signal', 'strop', 'struct', 'sys', 'thread', 'time', 
'xxsubtype', 'zipimport')
>>> 
Fazit: sys importieren hat keinerlei Nachteile.

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

oh, python ist immer wieder für eine überraschung gut!
aber trotzdem mag ich lieber raise SystemExit.
Oder hat das irgendwelche nachteile?
http://www.cs.unm.edu/~dlchao/flake/doom/
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

murph hat geschrieben:Oder hat das irgendwelche nachteile?
Hi murph!

Ich glaube nicht.

lg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
newone_XXV.
User
Beiträge: 50
Registriert: Dienstag 20. Juni 2006, 15:03
Wohnort: Direkt vor meinem PC
Kontaktdaten:

Ähm und wo ist dann da der Unterschied zwischen dem Beiden? :?
murph
User
Beiträge: 622
Registriert: Freitag 14. April 2006, 19:23
Kontaktdaten:

anscheinend kannst du beides benutzen,
ohne für dich einen unterschied zu bemerken
http://www.cs.unm.edu/~dlchao/flake/doom/
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

newone_XXV. hat geschrieben:Ähm und wo ist dann da der Unterschied zwischen dem Beiden? :?
sys.exit kann einen Rückgabewert ausgeben (nebenbei kann man es mit einem try-except-SystemExit-Konstrukt abfangen). Daneben gibt es noch sys._exit, dass keine mit atexit-registrierten Exit-Handler ausführt.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten