Verzeichnis ermitteln

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
absolutanon
User
Beiträge: 17
Registriert: Freitag 27. April 2007, 19:43

Montag 30. April 2007, 14:21

Hi,

Wie kann man das Verzeichnis feststellen, von dem das aktuelle Modul ausgeführt wird. Also wenn ich die .py ausführe, möchte ich, dass es mir die .cfg in den gleichen ordner wie die .py speichtert.

danke
BlackJack

Montag 30. April 2007, 14:26

Der eventuell relative Pfadname + Dateiname eines Moduls ist im Modul an den Namen `__file__` gebunden.
absolutanon
User
Beiträge: 17
Registriert: Freitag 27. April 2007, 19:43

Montag 30. April 2007, 14:34

Ich versteh das mit dem __file__ nicht wirklich. Wenn ich auf die .py Datei klicke, will ich halt den Pfad ermitteln, von dem die .py aus gestartet wurde.

Hilfe :)
absolutanon
User
Beiträge: 17
Registriert: Freitag 27. April 2007, 19:43

Montag 30. April 2007, 14:37

oh jetzt hab ich kapiert.

Konnte ja als Anfänger nicht wissen, dass es eine Variable gibt, die existiert, ohne dass ich sie vorher zugeweisen haben.

Danke dir!
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5554
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Telfs (Tirol)
Kontaktdaten:

Montag 30. April 2007, 15:21

Hier noch ein Link: http://www.python-forum.de/post-64471.html#64471

mfg
Gerold
:-)
[url]http://halvar.at[/url] | [url=http://halvar.at/elektronik/kleiner_bascom_avr_kurs/]Kleiner Bascom AVR Kurs[/url]
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
joost
gelöscht
Beiträge: 134
Registriert: Sonntag 29. April 2007, 13:28

Montag 30. April 2007, 16:28

Mach ich so (Dialg und act hier nur als Beispiele):

Code: Alles auswählen

from inspect import getfile

class Dialg(gtk.Window):
    """ To be used in a subprocess. This simplifies waiting for user-Input. """
    def act(self, widget, event):
        if event.hardware_keycode in (27, 13):
            print widget.get_text() # writes on a pipe to the parent
            self.destroy()

gtk.rc_set_default_files(dirname(getfile(Dialg.act)) + "\\Dialog.rc")
Das macht das Verzeichnis meiner Dialog-GUI-Klassen frei verschiebbar.
Antworten