スクリプトのディレクトリを見つけるにはどうすればいいですか? [重複] 質問する

スクリプトのディレクトリを見つけるにはどうすればいいですか? [重複] 質問する

次の Python コードを検討してください。

import os
print os.getcwd()

os.getcwd()スクリプトファイルのディレクトリの場所を取得するコマンドラインからスクリプトを実行すると正しいパスが提供されますが、Django ビューのコードで実行されるスクリプトから実行すると、 が出力されます/

Django ビューによって実行されるスクリプト内からスクリプトへのパスを取得するにはどうすればよいですか?

更新:
これまでの回答をまとめるos.getcwd()と、os.path.abspath()どちらも現在の作業ディレクトリを示しますが、これはスクリプトが存在するディレクトリである場合もそうでない場合もあります。私の Web ホスト設定では、__file__パスなしのファイル名のみが示されます。

Python で、スクリプトが存在するパスを (常に) 受け取ることができる方法はないのでしょうか?

ベストアンサー1

os.path.realpathを呼び出す必要があります__file__。そうすれば、__file__がパスのないファイル名の場合でも dir パスを取得できます。

import os
print(os.path.dirname(os.path.realpath(__file__)))

おすすめ記事