Python Py2Exe位置

Python Py2Exe位置,python,windows,path,py2exe,Python,Windows,Path,Py2exe,可能重复: 是否有方法获取当前使用py2exe运行的可执行文件的路径?例如,如果我使用存储在C:\Users\Desktop\John\myapp.exe中的py2exe生成了一个可执行文件,那么如何从Wondows中Python中的myapp.exe中获取此路径 提前感谢您的帮助-我非常感谢。py2exe将sys.executable设置为可执行文件的完整路径名sys.argv[0]也应给出此路径。有关官方文档,请参阅。py2exe将sys.executable设置为可执行文件的完整路径名s

可能重复:

是否有方法获取当前使用py2exe运行的可执行文件的路径?例如,如果我使用存储在C:\Users\Desktop\John\myapp.exe中的py2exe生成了一个可执行文件,那么如何从Wondows中Python中的myapp.exe中获取此路径


提前感谢您的帮助-我非常感谢。

py2exe将
sys.executable
设置为可执行文件的完整路径名
sys.argv[0]
也应给出此路径。有关官方文档,请参阅。

py2exe将
sys.executable
设置为可执行文件的完整路径名
sys.argv[0]
也应给出此路径。有关官方文档,请参阅。

您的
.exe
文件的路径应存储在
sys.executable

org wiki页面有一些有用的示例,您可能会发现这些示例也很有用


有趣的是,他们提倡使用
sys.argv[0]
而不是
sys.executable
。任何一个都可以在py2exe中正常工作。如果设置了
sys.freezed
,我总是使用
sys.executable
,从来没有出现过任何问题,但是使用
sys.argv[0]
也不会有任何伤害。

您的
.exe
文件的路径应该存储在
sys.executable

org wiki页面有一些有用的示例,您可能会发现这些示例也很有用


有趣的是,他们提倡使用
sys.argv[0]
而不是
sys.executable
。任何一个都可以在py2exe中正常工作。如果设置了
sys.freezed
,我总是使用
sys.executable
,而且从来没有出现过任何问题,但是使用
sys.argv[0]
也不会有任何伤害。

我使用了如下内容:

def get_app_info():
  # determine if application is a script file or frozen exe
  application = {'path': './', 'dir': './', 'start': None}

  if hasattr(sys, 'frozen'):
    application['path']   = sys.executable
    application['dir']    = os.path.dirname(sys.executable)
  else:
    application['path']   = os.path.abspath(sys.argv[:1][0])
    application['dir']    = sys.path[0]
  return application

我使用类似以下内容:

def get_app_info():
  # determine if application is a script file or frozen exe
  application = {'path': './', 'dir': './', 'start': None}

  if hasattr(sys, 'frozen'):
    application['path']   = sys.executable
    application['dir']    = os.path.dirname(sys.executable)
  else:
    application['path']   = os.path.abspath(sys.argv[:1][0])
    application['dir']    = sys.path[0]
  return application