Kompilierte Python-Skripte ausführen

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

Kompilierte Python-Skripte ausführen

Beitragvon TheLastAvatar » Donnerstag 19. Januar 2006, 22:57

Hallo,

ich habe einige Python-Dateien, die über "execfile" miteinander verbunden sind (jaja, evil, ich weiß). Gibt es eine Möglichkeit, die .py-Dateien zu kompilieren und sie danach trotzdem "irgendwie" aus Python heraus auszuführen? Also eine Art "execpyc" oder so? Gibt's so was? Oder wie kann ich das Problem sonst lösen?

Ich bastele den Dateinamen erst zur Laufzeit zusammen, daher das komplizierte Vorgehen, z.B. möchte ich eine bestimmte Tabellen-Klasse nachladen:

"Tablexxx.pyc" (wobei xxx irgendeine Nummer ist)

Irgendwelche Ideen?
Danke für die Hilfe!
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Beitragvon modelnine » Donnerstag 19. Januar 2006, 23:46

Schonmal mit __import__() probiert?

http://www.python.org/doc/2.4.2/lib/built-in-funcs.html

Kommt ohne execfile aus und macht genau das was Du willst.

--- Heiko.
modelnine
User
Beiträge: 670
Registriert: Sonntag 15. Januar 2006, 18:42
Wohnort: Celle
Kontaktdaten:

Beitragvon modelnine » Donnerstag 19. Januar 2006, 23:51

Ganz davon abgesehen: Du willst die Kompilate wegen der Performance, hoffe ich? Wenn Du sie nämlich willst weil Du den Inhalt nicht weitergeben willst, dann vergiss meinen letzten Tipp. Dann habe ich das nicht gesagt. ;-)

--- Heiko.

PS: Ich hab mich heute schon viel zu viel darüber aufgeregt dass Leute hier meinen man müsse den Kunden für die man Software entwickelt misstrauen, und alles möglichst so vor ihnen verstecken dass sie nie an die Quellen rankommen... Gut ist.
Benutzeravatar
jens
Moderator
Beiträge: 8458
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Re: Kompilierte Python-Skripte ausführen

Beitragvon jens » Freitag 20. Januar 2006, 08:25

TheLastAvatar hat geschrieben:Also eine Art "execpyc" oder so?

War schon nicht schlecht :) Es gibt execfile...

CMS in Python: http://www.pylucid.org
GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd

Wer ist online?

Mitglieder in diesem Forum: Google [Bot]