現在のパスを取得する Python メソッド:
import os,sys
Use sys.path[0], sys.argv[0] 、os.getcwd()、os.path.abspath(__file__)、os.path.realpath(__file__)
sys.path は、Python がモジュール sys.path を見つけるために使用する検索パスのリストです。 [0] と sys.argv[0] は同じものです。Python は sys.argv[0] を sys.path に自動的に追加します。
C:\test ディレクトリで python getpath\getpath.py を実行すると、os.getcwd() は「C:\test」を出力し、sys.path[0] は「C:\」を出力します。テスト\getpath」。
py2exe モジュールを使用して Python スクリプトを実行可能ファイルにコンパイルすると、sys.path[0] の出力も変更されます。
依存ライブラリが zip ファイルとしてパッケージ化されている場合デフォルトの方法では、sys.path[0] は "C:\test\getpath\libarary.zip" を出力します;
zipfile=None パラメーターが setup.py で指定されている場合、依存ライブラリは exe にパッケージ化されますfile、次に sys.path[0] は「C:\test\getpath\getpath.exe」を出力します。
#!/bin/env python #-*- encoding=utf8 -*- import os,sys if __name__=="__main__": print "__file__=%s" % __file__ print "os.path.realpath(__file__)=%s" % os.path.realpath(__file__) print "os.path.dirname(os.path.realpath(__file__))=%s" % os.path.dirname(os.path.realpath(__file__)) print "os.path.split(os.path.realpath(__file__))=%s" % os.path.split(os.path.realpath(__file__))[0] print "os.path.abspath(__file__)=%s" % os.path.abspath(__file__) print "os.getcwd()=%s" % os.getcwd() print "sys.path[0]=%s" % sys.path[0] print "sys.argv[0]=%s" % sys.argv[0] 输出结果: D:\>python ./python_test/test_path.py __file__=./python_test/test_path.py os.path.realpath(__file__)=D:\python_test\test_path.py os.path.dirname(os.path.realpath(__file__))=D:\python_test os.path.split(os.path.realpath(__file__))=D:\python_test os.path.abspath(__file__)=D:\python_test\test_path.py os.getcwd()=D:\ sys.path[0]=D:\python_test sys.argv[0]=./python_test/test_path.py
os.getcwd() "D:\"、開始実行ディレクトリが取得されます
sys.path[0] または sys.argv[0] "D:\python_test"、取得されます最初に実行されるスクリプトが配置されているディレクトリ
os.path.split(os.path.realpath(__file__))[0] "D:\python_test"、ファイル test_path.py の場所を取得します。ここで、__file__ はディレクトリ
現在のパスを正しく取得します:
__file__是当前执行的文件 # 获取当前文件__file__的路径 print "os.path.realpath(__file__)=%s" % os.path.realpath(__file__) # 获取当前文件__file__的所在目录 print "os.path.dirname(os.path.realpath(__file__))=%s" % os.path.dirname(os.path.realpath(__file__)) # 获取当前文件__file__的所在目录 print "os.path.split(os.path.realpath(__file__))=%s" % os.path.split(os.path.realpath(__file__))[0]
Python 関連の技術記事の詳細については、Python チュートリアル 列にアクセスして学習してください。
以上がPythonで現在のファイルパスを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。