SCITE Problem F5

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.
pitwo
User
Beiträge: 4
Registriert: Dienstag 3. Februar 2009, 15:48

Dienstag 3. Februar 2009, 16:07

Hallo Leute,

a.py :

Code: Alles auswählen

guess = input("Raten Sie: ")
Wenn ich das in der Konsole mit "python -u a.py" ausführe, klappt alles ohne Probleme.

Wenn ich den gleichen Quelltext jedoch in SciTE mit F5 aufrufe, kommt folgende Fehlermeldung:
>python -u "a.py"
Raten Sie: Traceback (most recent call last):
File "a.py", line 1, in <module>
guess = raw_input("Raten Sie: ")
IOError: [Errno 9] Bad file descriptor
>Exit code: 1
Kann mir bitte jemand bei diesem Problemchen helfen?

Die selbe Frage wurde vor einem Jahr schon auf diesem Forum gestellt aber ich habe die Lösung nicht gefunden. Danke fûr die Antworten.
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Dienstag 3. Februar 2009, 17:09

pitwo hat geschrieben:Die selbe Frage wurde vor einem Jahr schon auf diesem Forum gestellt aber ich habe die Lösung nicht gefunden. Danke fûr die Antworten.
Die Antwort ist einfach: Es gibt keine Lösung. Auch die aktuellste SciTE-Version zeigt unter Linux dieses Verhalten, unter Windows funktioniert das. Es scheint auch kaum jemanden ernsthaft zu stören (außer vielleicht dich und mich), denn man findet so gut wie nichts dazu.

Edit: Also, es gibt natürlich schon eine Lösung, aber nicht für den integrierten Ausgabebereich von SciTE. Du kannst SciTE z.B. so konfigurieren, dass du über einen anderen Shortcut als F5 den Quelltext in einem Extra-Terminal mittels Python ausführen lässt. Da funktioniert dann auch die Eingabe.
Dauerbaustelle
User
Beiträge: 996
Registriert: Mittwoch 9. Januar 2008, 13:48

Dienstag 3. Februar 2009, 17:56

Empfehle Geany, hat auch Scintilla als Editor und noch viele andere schöne Features :)
pitwo
User
Beiträge: 4
Registriert: Dienstag 3. Februar 2009, 15:48

Dienstag 3. Februar 2009, 18:01

numerix hat geschrieben:Die Antwort ist einfach
:D Fûr meinen ersten Besuch auf diesem Forum habe ich wirklich viel Glück :
- zuerst habe ich die Frage die ganz genau meinen Problem beschreibt hier gefunden, und das ist schon eine grosse "Chance" wenn man nur mit vieler Mühe Deutsch schreiben kann ;
- die Antwort, schnell gekommen, ist einfach : wenn es keine Lösung gibt werde ich sie nicht stundenlang suchen !
Also, es gibt natürlich schon eine Lösung, aber nicht für den integrierten Ausgabebereich von SciTE. Du kannst SciTE z.B. so konfigurieren, dass du über einen anderen Shortcut als F5 den Quelltext in einem Extra-Terminal mittels Python ausführen lässt. Da funktioniert dann auch die Eingabe.
Als Einsteiger habe ich noch viel zu lernen... Danke schön.

Noch ein kleine Frage : SciTE erkennt die Wörter wie "print", "if", "import", u.s.w. und wechselt die Farbe wenn man sie schreibt, aber bei mir geht es nicht so mit dem Wort "input" !? :K
Benutzeravatar
cofi
Moderator
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Dienstag 3. Februar 2009, 18:13

Auch das ist einfach ;) `if', `import' und (noch) `print' sind Statements. input - das man vor Python 3 nicht benutzen sollte - ist dagegen eine Funktion.
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Dienstag 3. Februar 2009, 18:14

pitwo hat geschrieben:Noch ein kleine Frage : SciTE erkennt die Wörter wie "print", "if", "import", u.s.w. und wechselt die Farbe wenn man sie schreibt, aber bei mir geht es nicht so mit dem Wort "input" !? :K
Die erstgenannten sind Python-Schlüsselwörter, input() ist "lediglich" eine Funktion, die z.B. auch überschrieben werden kann.

Code: Alles auswählen

>>> print = 5
  File "<stdin>", line 1
    print = 5
          ^
SyntaxError: invalid syntax
>>> input = 5
>>> 
In Python 3.0 ist print() auch "nur" noch eine Funktion:

Code: Alles auswählen

>>> print = 5
>>>     
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Dienstag 3. Februar 2009, 18:17

cofi hat geschrieben:Auch das ist einfach ;) `if', `import' und (noch) `print' sind Statements.
Das ist nicht das Entscheidende.

Python 2.5:

Code: Alles auswählen

>>> True = 5
>>> 
Python 3.0

Code: Alles auswählen

>>> True = 5
  File "<stdin>", line 1
SyntaxError: assignment to keyword
pitwo
User
Beiträge: 4
Registriert: Dienstag 3. Februar 2009, 15:48

Dienstag 3. Februar 2009, 18:22

:idea: Alles klar ! :wink:
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Dienstag 3. Februar 2009, 18:31

Also zusammengefasst: der Autor hat entschieden Statements (und auch andere Sachen) farblich hervorzuheben und irgendwelche anderen Sachen nicht. Das ist alles. Andere Highlighter machen das ggf. anders.

Zu dem Problem: ich führe Programme generell in einer eigenen Konsole aus, obwohl ich sie vom Editor starten könnte. Aber das funktioniert nur mit Programmen ohne Parametern einfach, wenn es ein Modul ist und das Programm über ein anderes Modul gestartet wird, hilft das sowieso nicht sonderlich weiter. Da habe ich schneller auf die Konsole gewechselt und den letzten Befehl wiederholt, als dass ich dem Editor sage, was er (mit welchen Parametern) starten soll.
pitwo
User
Beiträge: 4
Registriert: Dienstag 3. Februar 2009, 15:48

Dienstag 3. Februar 2009, 19:06

Dauerbaustelle hat geschrieben:Empfehle Geany, hat auch Scintilla als Editor und noch viele andere schöne Features :)
Sehr schön und scheint wirklich einfach zu sein ! Für ein Einsteiger wie ich, das Ideale ?
Danke schön.
Benutzeravatar
C4S3
User
Beiträge: 292
Registriert: Donnerstag 21. September 2006, 10:07
Wohnort: Oberösterreich

Dienstag 3. Februar 2009, 21:16

Ich mag persönlich DrPython (http://drpython.sourceforge.net/) recht gerne. Einsteigerfreundlich, erweiterbar, toll!
Gruß!
Benutzeravatar
HerrHagen
User
Beiträge: 430
Registriert: Freitag 6. Juni 2008, 19:07

Dienstag 3. Februar 2009, 21:34

Wie wärs mit IDLE? Noch einsteigerfreundlicher, noch einfacher - noch besser :wink:
Benutzeravatar
cofi
Moderator
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Dienstag 3. Februar 2009, 22:24

HerrHagen hat geschrieben:noch besser :wink:
Das will ich bezweifeln, aber bevor hier noch jemand seinen Lieblingseditor anpreist - btw benutze Vim! :D - hier der Thread in dem zahlreiche zu finden sind: http://www.python-forum.de/topic-3544.html
DasIch
User
Beiträge: 2465
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

Dienstag 3. Februar 2009, 22:34

cofi hat geschrieben:btw benutze Vim! :D
Eine gute Entscheidung ;)

Von Idle ist im übrigen abzuraten, löst mitunter recht seltsame Probleme, vorallem wenn man Tkinter nutzt, aus.
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Dienstag 3. Februar 2009, 22:49

DasIch hat geschrieben:
cofi hat geschrieben:btw benutze Vim! :D
Eine gute Entscheidung ;)

Von Idle ist im übrigen abzuraten, löst mitunter recht seltsame Probleme, vorallem wenn man Tkinter nutzt, aus.
Das musste ja wieder kommen. Ich habe bislang keinen Beleg dafür gefunden, dass es mit aktuellen IDLE-Versionen und korrektem Pythoncode inkl. Tkinter irgendein Problem gibt.

Gib doch mal ein Beispiel an, das außerhalb von IDLE läuft, mit IDLE aber nicht läuft, obwohl es korrekter Code ist.
Antworten