2017-07-27 132 views
2

我正在研究一种我希望将来可以安装的Python应用程序,因此很多人都可以使用它。现在,我想它来访问位于应用程序文件夹中的特定的可执行文件,它看起来像这样:如何使用Python制作通用路径

import subprocess 
subrocess.call ('C:\Users\myusername\Desktop\Chester 2.0\Engine\Arena.exe') 

如果我离开它这样,当别人运行它的计算机上,Python程序获得了”找到该文件,因为我们的用户名会有所不同。无论用户的计算机用户名是否有可以访问该文件的方式?

+1

你跟你的Python代码出货'Arena.exe' ?如果是的话,你在哪里运行你的脚本?如果不是的话 - 你如何保证所有用户的桌面上都有'Chester 2.0 \ Engine \ Arena.exe'? – zwer

+0

'os.path.join(os.getcwd(),'Arena.exe')' –

+0

@zwer我正在制作一个可执行文件,将程序安装在桌面上的任何人下载程序 – Esteb37

回答

2
from os.path import dirname 
print(dirname(__file__)) 

输出正在运行python的绝对目录。这应该让你去

0

我已经使用expanduser和os.path.join功能固定它,现在它看起来像这样:

from os.path import expanduser 
home = expanduser("~") 
arena = os.path.join(home, "Desktop\Chester 2.0\Engine\Arena.exe") 
subprocess.call (arena)