獲取當前絕對工作目錄與被執行檔案的絕對目錄

2021-08-20 13:21:16 字數 1446 閱讀 9857

有os.getcwd()、sys.argv[0]、sys.path[0]三種,有什麼不同呢?

當前工作目錄 為d:\>

執行程式 python程式如圖所示:

d:\>python d:/project/test/test.py

test.py的原始碼如下:

print(sys.path[0])

print(os.getcwd())

print(sys.argv[0])

其結果:

d:\project\test

d:\d:/project/test/test.py

結論:os.getcwd返回的是當前工作根目錄

sys.argv[0] 返回的python命令後面的第乙個字串變數

sys.path[0] 返回的是被執行指令碼所在的目錄

將當前目錄切換到被執行檔案所在的目錄

para.csv在被執行檔案所在的同級目錄

print(sys.path[0])

print(os.getcwd())

print(sys.argv[0])

os.chdir(sys.path[0])

print(os.getcwd())

df=pd.read_csv('para.csv')

print(df)

結果輸出:

d:\project\test

d:\d:/project/test/test.py

d:\project\test

train records num        710661

0   validation records num  34395.000000

1                    epoch  50000.000000

2          layer one units     32.000000

3          layer two units      6.000000

4                keep_prob      0.800000

5      regularization_rate      0.000100

6            learning_rate      0.001000

7    num_layer_input_units      6.000000

8   num_layer_output_units      6.000000

9  run time  total seconds  45095.870531

結論:正確地讀取了para.csv檔案,

將os.chdir(sys.path[0])注釋掉

結果輸出:filenotfounderror: file b'para.csv' does not exist

結論:說明os.chdir(sys.path[0])能將當前工作目錄切換到被執行檔案所在的目錄

VC 獲取可執行檔案當前目錄

char lpszcurrentpath max path max path是win32定義的乙個巨集,表示windows允許的最大路徑255 getcurrentdirectory max path lpszcurrentpath getcurrentdirectory可以獲取程式當前執行的目錄,...

設定當前exe執行檔案為程序工作目錄

設定當前exe執行檔案為程序工作目錄 兩種辦法 1,api void splitpath const char path,char drive,char dir,char fname,char ext 這個函式將檔案全名 帶路徑 分解成路徑名,檔名,字尾名。2,api bool pathremove...

Linux 獲取當前程序的執行檔案的絕對路徑

摘要 本文介紹linux的應用程式和核心模組獲取當前程序執行檔案絕對路徑的實現方法。應用程式的實現方法 include include int main 核心模組的實現方法 include include char ptr char link 100 buf 256 struct path path...