例子python
#!/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」,取的是__file__所在文件test_path.py的所在目錄 spa
正確獲取當前的路徑code
__file__是當前執行的文件get
# 獲取當前文件__file__的路徑it
print "os.path.realpath(__file__)=%s" % os.path.realpath(__file__)test
# 獲取當前文件__file__的所在目錄import
print "os.path.dirname(os.path.realpath(__file__))=%s" % os.path.dirname(os.path.realpath(__file__))
# 獲取當前文件__file__的所在目錄coding
print "os.path.split(os.path.realpath(__file__))=%s" % os.path.split(os.path.realpath(__file__))[0] file