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!
Python.exe
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.
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.
[ 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
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
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"])
- 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 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.
Code: Alles auswählen
python setup.py
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.
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
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]
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]
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"])
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?
- 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.
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.
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
Ach, du bist doch nur neidischcofi 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.
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...
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Nichts laeg mir fernerice2k3 hat geschrieben:Ach, du bist doch nur neidisch
Ich hab/hatte nur das Gefuehl, dass der OP nicht verstanden hat, wo das Problem liegt/lag.
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
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... =(
(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... =(