2013-06-28 21 views

Odpowiedz

30

Wygląda na to, że IDLE zmienia bieżący katalog roboczy na lokalizację wykonywanego skryptu, podczas gdy uruchomienie skryptu przy użyciu cmd nie powoduje tego i pozostawia CWD takim, jaki jest.

Aby zmienić obecną roboczą dir do jednego zawierającego skrypt można użyć:

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

Zmienna __file__ jest dostępna tylko wtedy, gdy uruchomienie skryptu z pliku i zawiera ścieżkę do pliku. Więcej o tym tutaj: Python __file__ attribute absolute or relative?

3
import pathlib 

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

Doc ref: link

+1

dać odpowiedni opis do swojej odpowiedzi –

Powiązane problemy