[Python] 現在のパスを取得するいろいろ

Python
スポンサーリンク
スポンサーリンク

現在のパスを取得する方法 実行中の.pyファイルのパス

import sys,os

print(os.path.abspath(sys.argv[0]))

実行中のpythonファイルのパス

記載されているパス

import sys,os

print(os.path.abspath(__file__))

上記が記載されているファイルのパスが表示される。
つまり、インポートされた側に上記のコードが書いてあった場合、
インポートされた側のパスが表示される。

テスト

test1.py

import sys,os

print(os.path.abspath(sys.argv[0]))
print(os.path.abspath(__file__))

print(os.path.dirname(os.path.abspath(sys.argv[0])))
print(os.path.dirname(os.path.abspath(__file__)))

test2.py

import sys,os

# 親ディレクトリに置かれているスクリプトファイルをimport
sys.path.append(os.pardir)
import test1

結果

PS D:¥folder1¥folder2> python .¥test2.py
D:¥folder1¥folder2¥test2.py
D:¥folder1¥test1.py
D:¥folder1¥folder2
D:¥folder1

コメント