Python.exe

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
Rumble
User
Beiträge: 12
Registriert: Sonntag 25. Oktober 2009, 12:07

Hallo.
Ich versuche schon seit längerer Zeit, eine .exe aus einem meiner Python Dateien zu machen. Ich habe mir py2exe geladen und habe auch schon meherere Threads hier gelesen wo das erklärt wird, allerdings hilft mir das alles nichts weiter...
Die Datei, die ich konvertieren möchte, befindet sich in einem Ordner auf dem Desktop, den Ordner nenn ich einfach mal "Python". (Ich habe gelesen, dass der Pfad auch angegeben werden muss irgendwo...)
Folgendes Script hab ich mir hier angeschaut allerdings funktioniert es nicht:

from distutils.core import setup
import py2exe
import sys
if len(sys.argv[1]) == 1:
sys.argv.append("py2exe")

setup(console=["MeineDatei.py"])

Die "setup.py" befindet sich im selben Ordner wie die zu konvertierende Datei, was mach ich falsch? Kann mir jemand eine Schritt für Schritt Erklärung liefern und am Besten ohne irgendwelche Abkürzungen wie "cd Desktop" etc...?
Ich habe ein 32bit System mit Vista Home Premium, kann es sein, dass das der Grund ist, warum das eventuell nicht geht?
Ich bin Euch sehr dankbar für jede Antwort!
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

Vielleicht gibts du mal eine entsprechende Fehlermeldung?!
Auf den ersten Blick sieht das Skript nämlich gut aus und mit der Aussage "funktioniert nicht" kann hier wohl keiner was anfangen...

Benutze beim nächsten mal außerdem Syntax-Highlighting, wenn du wieder Code postest.

Als Alternative zu py2exe gibt es auch noch pyinstaller, vielleicht versuchst auch das mal.
Rumble
User
Beiträge: 12
Registriert: Sonntag 25. Oktober 2009, 12:07

Wie kann ich die Syntax hervorheben? Sorry, bin unerfahren, was Internet-Threads angeht...
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

[ code=py ]CODE[ /code ] ohne Leerzeichen halt, im Editor is auch son Button, der heißt Python
the more they change the more they stay the same
Rumble
User
Beiträge: 12
Registriert: Sonntag 25. Oktober 2009, 12:07

Code: Alles auswählen

Traceback (most recent call last):
  File "C:\Users\"Name"\Desktop\Python\setup.py", line 4, in <module>
    if len(sys.argv[1]) == 1:
IndexError: list index out of range
Nochmal meine setup.py Syntax...

Code: Alles auswählen

from distutils.core import setup
import py2exe
import sys
if len(sys.argv[1]) == 1:
    sys.argv.append("py2exe")

setup(console=["MeineDatei.py"])
Jetzt besser zu verstehen?
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Ich nehme an, dass du Aufrufe fuer `py2exe` per

Code: Alles auswählen

python setup.py
ermoeglichen willst.
Wenn das stimmt, solltest du den Index entfernen, du ueberpruefst naemlich gerade ob dein 2. Parameter (1 == Skriptname) 1 Zeichen lang ist.
Da du ohne 2. Parameter aufrufst, bist du ausserhalb der Liste.
Rumble
User
Beiträge: 12
Registriert: Sonntag 25. Oktober 2009, 12:07

Meine Vermutung ist, dass die Versionen irgendwie spinnen... Hab Python Version 2.6.3 und der py2exe ist ja für 2.6... vielleicht sind die inkompatibel.
Ich bin gerade dem Tutorial gefolgt von http://www.py2exe.org/index.cgi/Tutorial#Step1
Da wo man das in DOS eingeben muss, kommt bei mir Folgende Fehlermeldung...

DeprecationWarning: the sets module is deprecated
import sets
running py2exe
*** searching for required modules ***
error: hello.py: no such file or directory

[/code]
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

Code: Alles auswählen

from distutils.core import setup
import py2exe
import sys
if len(sys.argv) == 1:
    sys.argv.append("py2exe")

setup(console=["MeineDatei.py"])
Versuch mal so.

Ein Versionsproblem ist es definitiv nicht!
Da musst du was falsch gemacht haben mit dem Tutorial... Hast du die hello.py wirklich im gleichen Verzeichnis wie die setup.py?
Rumble
User
Beiträge: 12
Registriert: Sonntag 25. Oktober 2009, 12:07

SOOOO ein Glücksgefühl!!!!!
Auf einmal kamen richtig viele Zeilen und Ting, fertig!
Einfach nur herrlich!
Vielen Dank Euch allen!
ice2k3, du bist mein Held =D

... Ich freu mich so... =)
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

Haettest du meinen Post gelesen _und_ verstanden, haettest du deine Loesung schon 1 Stunde vorher gehabt.

Kann es vielleicht sein, dass du das Tutorial-Snippet blind abgetippt hast, ohne eine `hello.py` Datei zu erstellen?

Hm. Ich kann einfach nicht anders.
Kristen Nygaard hat geschrieben:To program is to understand.
ms4py
User
Beiträge: 1178
Registriert: Montag 19. Januar 2009, 09:37

cofi hat geschrieben:Haettest du meinen Post gelesen _und_ verstanden, haettest du deine Loesung schon 1 Stunde vorher gehabt.

Kann es vielleicht sein, dass du das Tutorial-Snippet blind abgetippt hast, ohne eine `hello.py` Datei zu erstellen?

Hm. Ich kann einfach nicht anders.
Kristen Nygaard hat geschrieben:To program is to understand.
Ach, du bist doch nur neidisch :P
Nein, du hast natürlich recht, du hast ihn schon darauf hingewiesen und er hat das wohl nicht verstanden. Das Zitat gefällt mir übrigens...
Benutzeravatar
cofi
Python-Forum Veteran
Beiträge: 4432
Registriert: Sonntag 30. März 2008, 04:16
Wohnort: RGFybXN0YWR0

ice2k3 hat geschrieben:Ach, du bist doch nur neidisch :P
Nichts laeg mir ferner :twisted:
Ich hab/hatte nur das Gefuehl, dass der OP nicht verstanden hat, wo das Problem liegt/lag.
Rumble
User
Beiträge: 12
Registriert: Sonntag 25. Oktober 2009, 12:07

Das Programm hatte ich selbstverständlich in dem Verzeichnis aber aus irgendeinem beschissenen Grund ging es nicht.

(Ich habe übrigens meine Version auf 2.5 geändert und danach hier geguckt, da stand die neue Antwort von ice, ich hab sie eingegeben und es hat einwandfrei funktioniert. Freut euch doch mit mir... =(
Antworten