2017-07-27 7 views
2

私は将来的にインストール可能にしたいPythonアプリケーションを開発しているので、多くの人が使用できます。私はそのようにそれを残す場合は、他の誰かが自分のコンピュータ上でそれを実行したときに、Pythonプログラムは、」勝ったPythonでユニバーサルパスを作成する方法

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

:今、私はそれがこのようになりますappフォルダにあり、特定の実行可能ファイルを、アクセスしたいです私たちのユーザー名は異なるため、ファイルを見つけることはありません。ユーザーのコンピュータユーザー名に関係なく、ファイルにアクセスできる方法はありますか?

+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が実行されている絶対ディレクトリを出力します。それはあなたが、私は今、それは次のようになり、expanduserとos.path.join関数を使用して、それを修正した

0

を軌道に乗る必要があります。

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