Programm bricht nach Start sofort ab

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
Gast

Hallo,

hab mir jetzt ein kleines Programm geschrieben. Ich habs kompiliert und hab jetzt eine .exe. Wenn ich es jedoch starte kann ich meine Eingabe noch machen, jedoch schließt sich danach sofort das "Eingabeaufforderungsfenster", was jedoch eigentlich gar nicht sein dürfte, da ich viele sleep Befehle drin hab.
Wenn ich es unter IDLE teste läufts jedenfalls einwandfrei.

:?:

Gibts vielleicht ne Möglichkeit die Eingabeaufforderung irgendwie anzuhalten nach Ablauf des Programmes?
Benutzeravatar
Mawilo
User
Beiträge: 452
Registriert: Sonntag 22. Februar 2004, 10:58
Wohnort: Sachsen
Kontaktdaten:

schreibe ein

Code: Alles auswählen

raw_input() 
unter das Programm und die Eingabeaufforderung schließt sich erst, wenn du Return drückst.
Gast

Danke für die Antwort. Mein Problem besteht jedoch weiterhin. Mein Programm schließt sich schon eher, aus heiterem Himmel heraus. :(

Hier der Code:

Code: Alles auswählen

import time
import randomclient

AnzahlDurchlaeufe = input("Anzahl der Durchläufe = ")
Pause = input("Pause zwischen zwei Werten = ")

raw_input() #ein einfacher Haltepunkt um zu sehen bis wohin das Programm funktioniert.

AnzahlzuholenderZufallszahlen = AnzahlDurchlaeufe/8 + 1

raw_input() #ein einfacher Haltepunkt um zu sehen bis wohin das Programm funktioniert.

Zufallszahlen = randomclient.truerand(AnzahlzuholenderZufallszahlen, 'b')

raw_input() #ein einfacher Haltepunkt um zu sehen bis wohin das Programm funktioniert.
Nach dem vorletzten raw_input() schließt sich mein Programm von selber. Es müsste also in folgender Zeile der Fehler liegen:

Code: Alles auswählen

Zufallszahlen = randomclient.truerand(AnzahlzuholenderZufallszahlen, 'b')
Aber wo soll hier der Fehler sein? :?:
Ich habe die Funktion doch richtig angesprochen.
Jedenfall laut der Definition im Modul:

Code: Alles auswählen

# num is number of random numbers to fetch.
# format is b, o, d, or h for strings in that base
# format is n to return integers, or f for raw bytes.
# for all formats, except f, the data is returned as
# a list. bytes are returned as an unmolested string.

def truerand(num, fmt):
Gibt es vielleicht irgend so ne Möglichkeit, das Programm zeilenweise durchzugehen, ohne dass sich die Eingabeaufforderung gleich schließt? Und ja in IDLE hab ichs schon ausprobiert hier klappts ohne Probleme.
Ich kenns nur so von Pascal, dass ich da zeilenwiese compilieren konnte. :D

naja, wär dankbar für jede Hilfe

Edit (Leonidas): Code in Python-Tags gesetzt.
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Ich denke es kommt zu einem Traceback und die Shell/Eingabeaufforderung schließt sich wieder, weil das Programm aus deren sicht beendet ist ;)

Also entweder du startest erstmal manuell eine Shell/Eingabeaufforderung und dann das Programm...

Einfacher geht's mit SciTE... Da kann man einfach F5 drücken und das Programm wird ausgeführt und man sieht links die Ausgaben, die man in aller ruhr bedrachten kann...
Dazu muß SciTE allerdings erstmal eingerichtet werden. Deswegen hab ich hier mal meine SciTE Einstellungen hinterlegt: http://www.pythonwiki.de/PythonDeForum/ ... ntegration

s. auch http://www.pythonwiki.de/PythonDeForum/ ... ba93a62497

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
jihi
User
Beiträge: 14
Registriert: Montag 29. August 2005, 20:53
Wohnort: Hessen
Kontaktdaten:

Also nur so ein Gedanke:

Wenn du das in eine Exe datei compilierst, dann ist das Modul randomclient nicht mehr vorhanden, weil es ja nicht zu den Build ins gehört(oder?)

Wie das genau geht weiß ich auch nicht, aber es ging glaub ich :wink:
Gruss Jihi
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

jihi hat geschrieben:Wenn du das in eine Exe datei compilierst, dann ist das Modul randomclient nicht mehr vorhanden, weil es ja nicht zu den Build ins gehört(oder?)
Normalerweise sollte py2exe das automatisch einbinden, aber wenn nicht, dann guck ins py2exe Wiki dort wird es beschreiben (z.B auf der Seite EncodingsAgain).
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

cmd.exe starten (unter Linux die bash)
und

Code: Alles auswählen

python /pfad/zu/meinem/programm/eingeben.py
und dann den debug output ansehen.
TUFKAB – the user formerly known as blackbird
Antworten