Quando si tratta di file nelle directory in Python, è sempre una buona idea utilizzare percorsi assoluti. Tuttavia, se si sta lavorando con percorsi relativi è necessario comprendere il concetto di directory di lavoro corrente e come trovare o modificare la directory di lavoro corrente. Un percorso assoluto specifica un percorso di file o directory a partire dalla directory principale, mentre il percorso relativo inizia dalla directory di lavoro corrente.,

Quando si esegue uno script Python, la directory di lavoro corrente viene impostata sulla directory da cui viene eseguito lo script.

Il modulo python os fornisce un modo portatile per interagire con il sistema operativo. Il modulo fa parte della libreria Python standard e include metodi per trovare e modificare la directory di lavoro corrente.

Ottenere la directory di lavoro corrente in Python #

Il metodogetcwd() del modulo os in Python, restituisce una stringa che contiene il percorso assoluto della directory di lavoro corrente., La stringa restituita non include il carattere barra finale.

os.getcwd()

Per utilizzare i metodi del modulo os, è necessario importare il modulo nella parte superiore del file.

di Seguito è un esempio che mostra come stampare la directory di lavoro corrente:

L’output sarà simile a questa:

Current working directory: /home/linuxize/Desktopos.getcwd() returns an object of type: <class 'str'>
Se si desidera trovare la directory in cui si trova lo script, utilizzare os.path.realpath(__file__). Restituirà una stringa contenente il percorso assoluto dello script in esecuzione.,

Modifica della directory di lavoro corrente in Python #

Per modificare la directory di lavoro corrente in Python, utilizzare il metodochdir().

os.getcwd(path)

Il metodo accetta un argomento, il percorso della directory in cui si desidera modificare. L’argomentopath può essere assoluto o relativo.,

Ecco un esempio:

L’output sarà simile a questa:

Current working directory: /home/linuxize/DesktopCurrent working directory: /tmp

L’argomento fornito al chdir() metodo deve essere una directory, altrimenti NotADirectoryError viene generata un’eccezione. Se la directory specificata non esiste, viene generata un’eccezioneFileNotFoundError. Se l’utente in cui è in esecuzione lo script non dispone delle autorizzazioni necessarie, viene generata un’eccezione PermissionError.,

Conclusione #

Per trovare la directory di lavoro corrente in Python, utilizzareos.getcwd(), e per modificare la directory di lavoro corrente, utilizzareos.chdir(path).