Wie funktioniert py2exe?

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.
eingast

Hallo,

wo bekomme ich py2exe her und was muss ich machen um eine python datein in ene exe Datein umzuwandeln?

Vielen Dank!
Olliminatore
User
Beiträge: 55
Registriert: Montag 30. Mai 2005, 16:03
Wohnort: schönsten Stadt Deutschlands
Kontaktdaten:

jens hat geschrieben:Als Neuer solltest du dir vielleicht erstmal unsere FAQ anschauen, dann sind schon mal einige Fragen geklärt ...

Viel Spass beim Python-Programmieren Laughing und wenn du Fragen hast immer her damit...
oder einfach mal im Forum suchen
http://www.python-forum.de/viewtopic.ph ... ght=py2exe
deShoe

mosche

ich möchte auch einfach eine exe erstellen - das faq hilft mir da nicht weiter da steht doch nicht drin wies funzt, oder?(hab jedenfalls nix gefunden)
und das englische faq von py2exe verstehe ich nicht
-kann mir nicht einfach mal jemand, an einem einfachen beispiel, erklären was genau ich machen muss um, nachdem ich py2exe installiert habe, eine fertige exe zu bekommen? plz...thx

mfg deShoe
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Einige Informationen finden sich in deren Wiki, nur der Link dahin ist auf der Hauptseite etwas versteckt:

http://starship.python.net/crew/theller/moin.cgi/Py2Exe

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
deShoe

uhhhh... englisch..
h.. lets see
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Das ist doch nicht schwer:
setup.py:

Code: Alles auswählen

# setup.py
from distutils.core import setup
import py2exe

setup(console=["myscript.py"])
und dann mit python setup.py py2exe das aufrufen, dann solltest du einen dist-Ordner haben, wo dann der Kram drin ist. Steht alles auf py2exe.org.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
deShoe

also die setup datei habe ich jetzt:

Code: Alles auswählen

#!/usr/bin/env python

from distutils.core import setup
import py2exe

setup(name='Wiener Hofzwerge',
      version='beta1',
      description='Steuer Abrechnung einiger Wiener Hofzwerge',
      author='deShoe aka Benjamin Kosmehl',
      author_email='deshoe@blubb.at',
      url='http://www.vii.de.tt',
      windows=["prjkt_hofzwrgse_b1.pyw"]
     )
wenn ich das aber alufen lasse sagt er aber exit code usage: setup.py [global_opts] cmd1 [cmd1_opts] - was heißt das?
und wie rufe ich das auf? wenn ich den befehl
python setup.py py2exe
im interactive window eingebe gibts nur fehler
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Du musst schon Python in der normalen Eingabeaufforderung aufrufen, sonst gehts natürlich nicht.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
[GO]deShoe

hmm...
in der command line bekomm ich s auch nicht gebacken
- --> python absoluterpfad py2.exe
in allen variationen gehts nich -hilfe
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Was ist denn die Fehlermeldung? Außerdem heißt es "py2exe" nicht "py2.exe", das könnte dein Fehler sein.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
querdenker
User
Beiträge: 424
Registriert: Montag 28. Juli 2003, 16:19
Wohnort: /dev/reality

Ok,
Punkt Nr 1: Lern Englisch! Der grösste Teil, wenn nicht sogar alle Programmiersprachen, sind an die englische Sprache angelehnt. Ohne Englisch kommt man generell im Bereich EDV (neudeutsch IT) nicht weiter. Klingt hart, ist aber so.

Punkt Nr 2: Was kennst du bisher schon von Python ? Kannst du "normale" python Programme aus der cs starten?

Punkt Nr 3: Wir können dir besser helfen, wenn wir die Fehler sehen. Ein allgemeines Gemaule a lá "Das geht nicht" is gleichzusetzten mit dem Befragen des Orakels von Delphi oder dem Reiben an der Glaskugel der Gundel Gaukeley!


MfG, querdenker
[edit] Typos, sch.... Laptop-Tastatur
Zuletzt geändert von querdenker am Samstag 10. Dezember 2005, 23:18, insgesamt 1-mal geändert.
[GO]deShoe

ja - ne py2exe mein ich doch ne das hatte ich
--< der fehler ist :
>>> python D:\hm\python24\hm\setup.py py2exe
File "<stdin>", line 1
[...]

ich hab den pfad aber auch schon variiert und versucht anders darzustellen zb mit / anstatt \ -ging alles nich war immer nen syntax error
querdenker
User
Beiträge: 424
Registriert: Montag 28. Juli 2003, 16:19
Wohnort: /dev/reality

Du befindest dich im interaktiven Bereich des Python-Interpreters.
Du bist nicht in der Kommandozeile!

MfG, Querdenker
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Poste doch mal die ganze Fehlermeldung, du hast im Moment den interessantesten Teil weggeschnitten.

Was auch helfen kann (zwar nicht gegen SyntaxErrors, aber sonst): wechsle in den Ordner D:\hm\python24\hm\ und ruf von dort python setup.py py2exe auf.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
querdenker
User
Beiträge: 424
Registriert: Montag 28. Juli 2003, 16:19
Wohnort: /dev/reality

Noch ein Nachtrag:

Arbeite dich erstmal hier durch!
Sonst bist du nur gefrustet. Eine Anwendung mit py2exe zu erstellen steht erst am Ende des Lernens von Python an.

mfg, querdenker
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ich lege noch "Wie starte ich Skripte?" aus der FAQ drauf.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
snakeseven
User
Beiträge: 408
Registriert: Freitag 7. Oktober 2005, 14:37
Wohnort: Berlin
Kontaktdaten:

Hi,
Viel kann ich dir über Py2exe nicht sagen, habe es nur kurz mit folgendem Script ausprobiert (Datei_In_Listbox_Laden.py):

Code: Alles auswählen

import string
from Tkinter import *

root = Tk()

fo = open ('G:/Titelliste.txt')
allestrings = fo.readlines()
fo.close()

# Erzeugen der Scrollbar
scb = Scrollbar(root, orient="vertical")

# Erzeugen der Listbox, Verbindung mit der Scrollbar
li = Listbox(root, height=5, yscrollcommand=scb.set)
scb["command"] = li.yview

# Einlesen der Namen in die Listbox
for z in allestrings:
    li.insert(END,string.rstrip(z))

#Anzeigen von Listbox und Scrollbar
li.pack(side="left")
scb.pack(side="left",fill="y")

root.mainloop()
Um ein Script compilieren zu lassen, mußt du ein setup.py Script erstellen. Dort schreibst du dann alles rein, was der Compiler an Informationen benötigt. In meinem Fall:

Code: Alles auswählen

from distutils.core import setup
import py2exe

setup(windows=["C:/Ablage/Python/PythonScripte/Datei_In_Listbox_Laden.py"])
setup(name='Distutils',
      packages=['distutils', 'distutils.command'],)
Jetzt führst du (unter Windows zumindest) in Start -> Ausführen folgendes Kommando aus:

Code: Alles auswählen

C:/Ablage/Python/PythonScripte/setup.py py2exe
Das Kommando enthält den Pfad des setup.py Scriptes und den Aufruf von py2exe.

Wenn alles an seinem Platz ist, sollte das eigendlich funktionieren. Am Ende hast du im Verzeichniss des Quellscriptes zwei Ordner:
'build' und 'dist'. In 'dist' ist dann auch die .exe deines Scriptes drin.

Gruss, Seven
Zuletzt geändert von snakeseven am Sonntag 11. Dezember 2005, 11:18, insgesamt 1-mal geändert.
deShoe
User
Beiträge: 6
Registriert: Samstag 10. Dezember 2005, 18:35

also englisch kann ich schon ich arbeite mich auch meistens erfolgreich durch die tutorial durch nur bei py2exe hats halt net geklappt ;-)
Du bist nicht in der Kommandozeile!
-aber ueber dem schwarzen dos fenster steht doch python (command line)- hmm?

der vollständige fehler heißt:
>>> python D:\hm\python24\hm\setup.py py2exe
File "<stdin>", line 1
python D:\hm\python24\hm\setup.py py2exe
^
SyntaxError: invalid syntax
deShoe
User
Beiträge: 6
Registriert: Samstag 10. Dezember 2005, 18:35

vielen dank @ snakeseven -das hat geholfen jetzt funzts -THX

danke für eure hilfe
deShoe
User
Beiträge: 6
Registriert: Samstag 10. Dezember 2005, 18:35

ja compilieren geht jetzt..
nur das erste script das ich ausprobiert habe sagt mir:
Der Prozedureinsprungpunkt "" wurde in der DLL "KERNEL32.dll" nicht gefunden
was immer das heißen mag..
ich hab uebrigens tkinter benutzt in dem script..
Antworten