Hi ho
Wie kriege ich das Verzeichnis herraus in dem sich das Programm befindet, das den befehl ausfürt ??
Verzeichnis?
mit getcwd. und mit chdir veränderst du das Verz dann, wenn du willst.
Code: Alles auswählen
import os
print os.getcwd()
Das ist nicht ganz trivial, da man das Programm mit relativem oder absolutem Pfad aufrufen kann, und außerdem können noch symbolische Links auftreten. Folgender Code funktioniert zumindest unter Linux bei mir gut:LuScHe hat geschrieben:Hi ho
Wie kriege ich das Verzeichnis herraus in dem sich das Programm befindet, das den befehl ausfürt ??
Code: Alles auswählen
#/usr/bin/env python
def home_path(resolve_links=0):
import sys, os
p = sys.argv[0]
if not os.path.isabs(p):
p = os.path.normpath(os.path.join(os.getcwd(), p))
if resolve_links:
p = os.path.realpath(p)
return os.path.split(p)[0]
if __name__ == '__main__':
print "Homepath: %s (resolved: %s)" % (home_path(), home_path(1))
Jörg