2014/04/08

Python Tips:実行中のスクリプトの名前を取得したい

Pythonで、実行中のスクリプトの名前を取得する方法をご紹介します。

と構えるまでもなくやり方はかんたんで、組み込みの変数 __file__ を使います。
print __file__
# => 実行中のスクリプト名の絶対パス

次のようにすると、ファイル名の部分だけ切り出すことができます。
import os

print os.path.basename(__file__)
# => 実行中のスクリプト名

逆にファイル名なしのパスだけを得たい場合は dirname を使います。
print os.path.dirname(__file__)
# => 実行中のスクリプトのディレクトリ

以上です。

ちなみに、 __file__ とよく似たものに __name__ があります。こちらは

  • 実行中のスクリプト内では "__main__"
  • 他からimportされたとき 拡張子なしのファイル名(モジュール名)

という値を格納しています。


参考
Get the name of current script with Python - Stack Overflow

0 件のコメント: