1. ホーム
  2. python

[解決済み] スクリプトのディレクトリを見つけるにはどうしたらいいですか?重複

2022-03-16 10:10:16

質問

次のようなPythonのコードを考えてみましょう。

import os
print os.getcwd()

私は os.getcwd() から スクリプトファイルのディレクトリを取得する . コマンドラインからスクリプトを実行すると正しいパスが表示されますが、 Django ビューのコードで実行されたスクリプトから実行すると、次のように表示されます。 / .

Django のビューで実行されるスクリプトの中から、スクリプトへのパスを取得するにはどうすればいいでしょうか?

UPDATEしてください。
これまでの回答をまとめると-。 os.getcwd()os.path.abspath() はどちらも現在の作業ディレクトリを指定しますが、これはスクリプトが存在するディレクトリである場合もありますし、そうでない場合もあります。私のウェブホストのセットアップでは __file__ は、パスなしでファイル名だけを与えます。

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

どのように解決するのですか?

を呼び出す必要があります。 os.path.realpath について __file__ というように __file__ がパスなしのファイル名であっても、ディレクトリのパスは取得されます。

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