1. ホーム
  2. python

[解決済み] 現在実行中のファイルのパスと名前を取得するにはどうしたらいいですか?

2022-03-18 07:58:52

質問

他のスクリプトファイルを呼び出すスクリプトがありますが、現在プロセス内で実行されているファイルのファイルパスを取得する必要があります。

例えば、3つのファイルを持っているとします。使用方法 実行ファイル :

  • script_1.py コール script_2.py .
  • 順番に script_2.py を呼び出します。 script_3.py .

のファイル名とパスを取得するにはどうすればよいですか? script_3.py , 内のコードから script_3.py から引数として情報を渡す必要がありません。 script_2.py ?

(実行 os.getcwd() は、現在のファイルではなく、元の開始スクリプトのファイルパスを返します)。

解決方法は?

p1.py:

execfile("p2.py")

p2.py:

import inspect, os
print (inspect.getfile(inspect.currentframe())) # script filename (usually with path)
print (os.path.dirname(os.path.abspath(inspect.getfile(inspect.currentframe())))) # script directory