2013-06-28 60 views
21

當我在空閒運行下面的腳本如何使用python 3獲取當前工作目錄?

import os 
print(os.getcwd()) 

我得到的輸出

D:\testtool 

,但是當我從命令提示符運行,我得到

c:\Python33>python D:\testtool\current_dir.py 
c:\Python33 

如何獲得相同我使用IDLE的結果?

回答

30

看來,IDLE將其當前工作目錄更改爲執行腳本的位置,而使用cmd運行腳本時不會這樣做,並且它會使CWD保持原樣。

要改變當前的工作目錄包含你的腳本,你可以使用一個:只有當您從文件執行腳本

import os 
os.chdir(os.path.dirname(__file__)) 
print(os.getcwd()) 

__file__變量可用,它包含文件路徑。更多關於它在這裏:Python __file__ attribute absolute or relative?

3
import pathlib 

current_dir = pathlib.Path(__file__).parent 
current_file = pathlib.Path(__file__) 

參考文件:link

+1

給予適當的描述,你的答案 –