Python获取程序所在目录
Python获取程序所在目录解决__file__或sys.argv在py2exe下失效的问题。
选自pathutils模块。
http://www.voidspace.org.uk/python/pathutils.html#get-main-dir
##############################################################################
# These functions get us our directory name
# Even if py2exe or another freeze tool has been used
def main_is_frozen():
"""Return ``True`` if we're running from a frozen program."""
import imp
return (
# new py2exe
hasattr(sys, "frozen") or
# tools/freeze
imp.is_frozen("__main__"))
def get_main_dir():
"""Return the script directory - whether we're frozen or not."""
if main_is_frozen():
return os.path.abspath(os.path.dirname(sys.executable))
return os.path.abspath(os.path.dirname(sys.argv))
##############################
页:
[1]