Pythonでは、現在実行中のスクリプトのパスを取得するために__file__
変数を使用します。この変数は、どこで実行され、誰から実行されても、常にファイル自身の絶対パスを返します。
print(__file__) # スクリプトのパスを参照
さらに、os.path
モジュールを使用して、絶対パス、ディレクトリパス、ファイル名を取得することも可能です。
import os
print(os.path.abspath(__file__)) # 絶対パスを取得
print(os.path.dirname(os.path.abspath(__file__))) # 絶対パスでディレクトリを取得
print(os.path.basename(__file__)) # ファイル名を取得
これらの情報は、スクリプトの存在するディレクトリ内で何かファイルやディレクトリを作成したい場合などに必要となります。
しかし、__file__
変数は、静的にリンクされたCモジュールや、共有ライブラリから動的にロードされた拡張モジュールでは存在しないことに注意が必要です。
以上がPythonの__file__
変数の基本的な使い方となります。この知識を活用して、Pythonスクリプトのパス関連の操作をより効率的に行ってみてください。.