Seite 1 von 1

Eclipse und raw_input

Verfasst: Mittwoch 20. Dezember 2006, 16:22
von JackBauer
Hallo,

ich bin nun ja seit langem auf der Suche nach einer guten IDE für Python. Hab Exclipse gefunden und war auch eigenltich ganz glücklich, bis ein Programm von mir net mehr funzt.

Das gleich Programm geht in IDLE oder direkt ohne Probs, aber mit Eclipse gibt er eine Fehlermeldung aus.

Code: Alles auswählen

import os
from random import randrange

asi=raw_input("list")
path = raw_input("Bitte filename angeben: ")
print path
anz = raw_input("Bitte Anzahl der Eintraege eingeben: ")
liste = ["Meyer", "Mueller", "Fischer", "Manu","Harald", "Lucy","Figu","Peter","Wolfgang","Antonia","Julien","Andi","Sunny",
         "Wolfgang","Zwiibu","Spakkus","Markus","Hans","Friederich","Goethe","Schuman","Schubert",
         "Chopin","Thaikowski","China-Foooooooood"]
print os.getcwd(),path
f = file(os.path.join(os.getcwd(),str(path)), "w")

f.write(anz+"\n")
for i in range(int(anz)):
    data = liste[randrange(0, len(liste))]+"#"+liste[randrange(0, len(liste))]+"#"+str(randrange(0,30))+"."+str(randrange(0,12))+"."+str(randrange(0,2000))+"#m#"
    f.write(data+"\n")
    data = "Strassenstr.56"+"#"+"10781#Berlin#030/2161037#"
    f.write(data+"\n")
    data = "175 cm#sportlich#heterosexuell#nein#"
    data += str(randrange(0,2))+"**"+str(randrange(0,2))+"**"+str(randrange(0,2))+"#"
    data += "per Mail#1005003#1547851254#schulte.roman@googlemail.com#"+str(randrange(0,200))+"#"
    data += "sportlich#18#nein#0**1**0#Ueberweisung=#0#"
    f.write(data+"\n")
    
f.close()


##Ausgabe
list
Bitte filename angeben: test.dat
test.dat
Bitte Anzahl der Eintraege eingeben: 43
E:\Informatik\Eclipse\Partnervermittlung test.dat
Traceback (most recent call last):
  File "E:\Informatik\Eclipse\Partnervermittlung\testdata_generator.py", line 18, in <module>
    f = file(os.path.join(os.getcwd(),str(path)), "w")
IOError: [Errno 2] No such file or directory: 'E:\\Informatik\\Eclipse\\Partnervermittlung\\test.dat\r'





Er hängt irgendwie an den Dateinamen ein "r" ran.

Woher kommt das, kann mir irgendjmd. helfen :(:(!


MFG Bauer

Verfasst: Mittwoch 20. Dezember 2006, 16:46
von C4S3
Hi,
ich weiss gar nicht, ob ich jetzt überhaupt richtig liege, aber:
es scheint so, als gäbe es viele, viele Editoren, die sowohl unter Windows als auch unter Linux arge Probleme damit hätten, Python-Scripts, welche input() und raw_input() verwenden, auszuführen.
Siehe meinen Thread über Scite unter Windows und den über Scite unter Linux. Das ist arg nervig. Schade.
Vi und drPython haben dieses Problem übrigens nicht. ;)

Verfasst: Mittwoch 20. Dezember 2006, 18:57
von JackBauer
Welche Python IDE wäre denn wirklich zu empfehlen??

PyScripter funzt bei mir nicht, also wäre der schoneinmal auszuschließen!


MFG bauer

Verfasst: Mittwoch 20. Dezember 2006, 20:55
von Rebecca
Da kannst du einam in diesem Thread nachlesen: http://www.python-forum.de/topic-3544.html, oder du schaust dir mal das Wiki an: [wiki]Tags/Editoren[/wiki]

Verfasst: Mittwoch 20. Dezember 2006, 22:18
von Leonidas
JackBauer hat geschrieben:Welche Python IDE wäre denn wirklich zu empfehlen??
Meinst du IDE oder Editor?

Ich arbeite mit Python ohne IDE, brauche ich nicht, wenn mein Editor schon alles benötigte kann.

Re: Eclipse und raw_input

Verfasst: Donnerstag 21. Dezember 2006, 00:07
von gerold
JackBauer hat geschrieben:war auch eigenltich ganz glücklich, bis ein Programm von mir net mehr funzt.
Hi JackBauer!

Das ist doch kein Grund um sofort eine ander IDE suchen zu müssen. :roll:

Das ist wahrscheinlich ein kleiner Bug. So wie es aussieht, vergisst Eclipse "\r" weg zu schneiden oder so etwas ähnliches.

Dein Code funktioniert wahrscheinlich, wenn du den Dateinamen mit ``strip()`` bearbeitest:

Code: Alles auswählen

path = raw_input("Bitte filename angeben: ")
path = path.strip()
http://sourceforge.net/forum/message.php?msg_id=2933702

mfg
Gerold
:-)

Verfasst: Donnerstag 21. Dezember 2006, 13:20
von sape
Eclipse kann nicht mir ``raw_input()`` umgehen. Wenn eine Script mit gestartet wird, das ``raw_input()`` nutzt, dann läuft das Skript "unendlich".