0
0

Python 自身のファイルのディレクトリパスを求める

Last updated at Posted at 2024-05-28

コード

import pathlib
import sys


# 1番目
# このファイルのディレクトリ
myDirPath = pathlib.Path(__file__).parent
# 設定ファイルなど
setting = myDirPath / 'setting.json'
print(setting)

# 2番目
# このファイルのディレクトリ
myDirPath = sys.path[0]
# 設定ファイルなど
setting = f'{myDirPath}/setting.json'
print(setting)

# 3番目
# このファイルのディレクトリ
myDirPath = pathlib.Path(sys.path[0])
# 設定ファイルなど
setting = myDirPath / 'setting.json'
print(setting)

os.pathは使わないものとする。

sys.pathはモジュールを検索するパスを示す文字列のリストで、pythonでスクリプトの実行時にスクリプトファイルのディレクトリが0番目に記載されるため、今回の目的と一致する。
スクリプトファイルがimport文で呼び出される場合は当然呼び出し元のディレクトリパスになるので、他から呼び出されないスクリプトに限って使用するべきでしょう。

※コメントで簡単な書き方を教えてもらいました。ありがとうございます。

参考

0
0
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0