Problem bei dem starten eines Programmes.

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.
JOJO
User
Beiträge: 14
Registriert: Sonntag 12. Dezember 2004, 16:02
Kontaktdaten:

Problem bei dem starten eines Programmes.

Beitragvon JOJO » Sonntag 12. Dezember 2004, 16:07

Hallo zusammen

Also ich bin nen neuling aber bin total begeistert von Python aber habe momentahn nen Problem und zwar habe hier ein ganz kleines Progranm und das will nicht laufen könnt ihr mir helfen hier ist der Code.

Code: Alles auswählen

# Autor: Timo Eichsädt
# Datum: 12.12.2004
# quiz.py: Das erste Quiz

frage = "Welche Programiersprache lernne ich gerade? "
loesung = "Python"

antowort = raw_input(frage)
if antwort == loesung:
    print "Richtig! "

if antwort != loesung:
    print "Leider falsch! "
    Richtig ist: ", loesung

# End


Ich habe die Datei als quiz.py abgespeichert aber wenn ich sie starten will (pehr doppelklick) kommt nur für einige millisekunden die schwarze Console.
Was mache ich falsch ?

MFG JOJO

Edit (Leonidas): Code in Python Tags gesetzt
Benutzeravatar
Dookie
Python-Forum Veteran
Beiträge: 2010
Registriert: Freitag 11. Oktober 2002, 18:00
Wohnort: Salzburg
Kontaktdaten:

Beitragvon Dookie » Sonntag 12. Dezember 2004, 16:26

Hi JOJO,

soweit ich das sehe ist in der letzten Zeile ein Fehler:

Code: Alles auswählen

    Richtig ist: ", loesung

sollte wohl heissen:

Code: Alles auswählen

    print "Richtig ist: ", loesung

Zum Testen unter Windows verwende ein Dosfenster, von dem aus du das Script startest oder IDLE. Das normale Ausgabefenster wird leider auch bei Fehlern im Script nach beenden des Programmes gleich geschlossen und so kannst du Fehlermeldungen nicht lesen.


Gruß

Dookie

Code: Alles auswählen

#!/usr/bin/env python
import this
JOJO
User
Beiträge: 14
Registriert: Sonntag 12. Dezember 2004, 16:02
Kontaktdaten:

Beitragvon JOJO » Sonntag 12. Dezember 2004, 16:51

Ok super also es läuft jetzt zur hälfe ;)
Also ich kann jetzt die antwort zu frage eingeben aber nachdem ich die antwort eigegeben habe beendet er das programm wieder :/
also da muss wohl noch nen fehle sein :/

Wie kann ich das Prgramm im DOS Fenster starten so das ich die Fehlermeldungen lesen kann ?

MFG JOJO
Clython
User
Beiträge: 151
Registriert: Samstag 21. August 2004, 13:58
Wohnort: Schweiz, BE-2500

Beitragvon Clython » Sonntag 12. Dezember 2004, 17:03

Welches Windows benutzt du? Die Eingabeaufforderung findest du normalerweise unter Programme/Zubehör.
Wenn du python in die Umgebungsvariable getan hast, kannst du es in der Konsole jederzeit aufrufen, sonst musst du ins Verzeichnis wechseln wo python steckt und das Programm entweder mit "python quiz.py" oder (wenn der Code nicht im gleichen Verzeichnis ist) mit "python foo\quiz.py" aufrufen.
Wobei foo durch den Pfad zu der Datei ersetzt werden muss.

Falls du keine Ahnung von DOS hast, solltest du dir vielleicht mal die grundlegenden Befehle beibringen: dir, cd, copy etc.
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Re: Problem bei dem starten eines Programmes.

Beitragvon Leonidas » Sonntag 12. Dezember 2004, 17:15

JOJO hat geschrieben:

Code: Alles auswählen

antowort = raw_input(frage)
if antwort == loesung:
    print "Richtig! "

if antwort != loesung:
    print "Leider falsch! "
    Richtig ist: ", loesung


Sollte es nicht

Code: Alles auswählen

antwort = raw_input(frage)
heißen? Weil du hast antowort geschrieben...
Ich würde es dir ja empfehlen Python.exe im %PATH% zu haben, dann kannst du aus der Eingabeaufforderung (was für ein Mistwort) direkt startet: python quiz.py
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Clython
User
Beiträge: 151
Registriert: Samstag 21. August 2004, 13:58
Wohnort: Schweiz, BE-2500

Beitragvon Clython » Sonntag 12. Dezember 2004, 17:27

Hey nicht den Boten erschiessen, ich benutze auch lieber Shell oder der Schwarzetippkasten, aber den Noobs muss man ja immer alles aufs Auge binden :wink:
JOJO
User
Beiträge: 14
Registriert: Sonntag 12. Dezember 2004, 16:02
Kontaktdaten:

Beitragvon JOJO » Sonntag 12. Dezember 2004, 17:30

@Clython: Ich benutze Windows-XP-Professional

@Leonidas: jo sollte antwort heißen ^^

Jetzt läuft das Programm aber wenn ich die Antwort eingegeben habe
kommt für nen paar Millisekunden der Text (richtig oder falsch)
aber das Programm beendet zu schnell wie kann ich ihm sagen das ich nochmal "Enter" drücken muss damit er das Programm beendet ?
oder ne zeit angabe ?


MFG JOJO
Clython
User
Beiträge: 151
Registriert: Samstag 21. August 2004, 13:58
Wohnort: Schweiz, BE-2500

Beitragvon Clython » Sonntag 12. Dezember 2004, 17:43

Dann solltest du Folgendes tun:

Start/Systemsteuerung/System/Erweitert/Umgebungsvariablen

Dort klickst du die Zeile PATH an un drückst auf den Knopf "Bearbeiten". Dann fügst du am Ende der Zeile zuerst ein ; (falls noch nicht vorhanden) und darauf den Pfad zu Python (wahrscheinlich was wie c:\Programme\Python24) oder so.

Okay drücken und PC neu starten, damit die Änderung greift.

Wenn du jetzt über Start/Programme/Zubehör/Eingabeaufforderung das DOS Fenster öffnest, sollte python von jedem Verzeichnis aus aufrufbar sein. Alles was du noch tun musst, ist ins Verzeichnis zu wechseln, wo dein Quelltext liegt und in mit python quiz.py auszuführen.

Für faule und dumme bietet sich noch dieser kleine Kniff an: Rufe am Ende deines Codes nochmal ein raw_input() auf, dann musst du noch einmal auf Enter drücken bevor das Fenster zugeht.

Die erste Methode ist aber jene die wir dir hier empfehlen, das andere ist eigentlich ziemlich schlechter Stil...
JOJO
User
Beiträge: 14
Registriert: Sonntag 12. Dezember 2004, 16:02
Kontaktdaten:

Beitragvon JOJO » Sonntag 12. Dezember 2004, 18:11

Puhhhh jetzt meint er:
python: can`t open file 'quiz.py'

habe alles so gemacht wie du gesagt hast :)


MFG JOJO
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Sonntag 12. Dezember 2004, 18:19

Clython hat geschrieben:Hey nicht den Boten erschiessen, ich benutze auch lieber Shell oder der Schwarzetippkasten, aber den Noobs muss man ja immer alles aufs Auge binden :wink:

Nein, war ja auch nicht gegen dich gerichtet, sondern gegen den der sich das Wort ausgedacht hat, sorry wenn es falsch rübergekommen ist.

JOJO hat geschrieben:Puhhhh jetzt meint er:
python: can`t open file 'quiz.py'

Okay, angenommen du hast das Script in C:\PyProgs\quiz.py, dann musst du folgendes in der Konsole eingeben:

Code: Alles auswählen

C:
cd \
cd PyProgs
python quiz.py
Oder

Code: Alles auswählen

python C:\PyProgs\quiz.py
Denn der Python Interpreter muss ja wissen, wo genau er dein Programm finden kann.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
JOJO
User
Beiträge: 14
Registriert: Sonntag 12. Dezember 2004, 16:02
Kontaktdaten:

Beitragvon JOJO » Sonntag 12. Dezember 2004, 18:24

*freu*

es geht =)
Thx 4 help
mein erstes kleinen "Programm" läuft =)


MFG JOJO
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Sonntag 12. Dezember 2004, 18:26

Super! Ein Python Programmierer mehr :)
Ich möchte noch anmerken, dass es nicht nur bei Python so "kompliziert" ist, sondern auch bei anderen Sprachen (und besonders unter Windows wo im PATH meist nichts interessantes steht), denn es gibt eigentlich keinen anderen, besseren Weg.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Clython
User
Beiträge: 151
Registriert: Samstag 21. August 2004, 13:58
Wohnort: Schweiz, BE-2500

Beitragvon Clython » Sonntag 12. Dezember 2004, 18:45

Freut mich das es funktioniert. Wie schon gesagt, solltest du dir jetzt vielleicht noch die grundlegenden Befehle des Schwarzentippkastens beibringen. Das wird dir das Leben erleichtern, speziel sobald du mal mit Dateien rumspielen willst...
JOJO
User
Beiträge: 14
Registriert: Sonntag 12. Dezember 2004, 16:02
Kontaktdaten:

Beitragvon JOJO » Sonntag 12. Dezember 2004, 19:05

Jop werde ich machen :)
thx 4 help
Ps: werde ich noch des öfteren in anspruch nehmen ^^

MFG JOJO
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Beitragvon jens » Montag 13. Dezember 2004, 07:45

Du hättest auch, damit man das Ergebniss noch sehen kann, ganz am Ende ein pause = raw_input("[ENTER drücken]") einfügen können ;) Muß man auch immer bei Batch-Progs machen, wenn man sie einfach nur per doppel-klick ausführt...

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder