Com obtenir el directori de treball actual a Python

How Get Current Working Directory Python



El nom del fitxer o carpeta es pot utilitzar amb el camí d'accés complet o només esmentant el nom del fitxer o la carpeta només per utilitzar-lo a l'script. El camí d'accés complet d'un fitxer o carpeta del directori arrel s'especifica per camí d'accés absolut. Quan s’utilitza el nom del fitxer sense la ruta de l’escriptura, s’assumeix el directori de treball actual com a la ruta del fitxer i s’anomena ruta relativa. A Python, el directori de treball actual es defineix a la ubicació del directori des d’on s’executa l’escriptura python. Hi ha molts mòduls a Python per obtenir el Directori de treball actual. Les maneres de recuperar el directori de treball actual mitjançant diferents mòduls a Python s'han mostrat en aquest tutorial.

Exemple-1: utilitzar el mòdul pathlib per obtenir el directori de treball actual

La classe de camí del mòdul pathlib s'utilitza per llegir el directori de treball actual de l'script d'execució. Creeu un script Python amb el codi següent per llegir i imprimir el directori de treball actual mitjançant el mòdul pathlib. El mètode cwd () de la classe Path s'utilitza per imprimir el directori de treball actual des d'on s'està executant l'script.







# Importeu el camí des del mòdul pathlib

des depathlibimportacióCamí

# Recupereu la ruta del directori de treball actual

directori_funcionament_actual=Camí.cwd()

# Imprimiu la ubicació del directori de treball actual

imprimir('La ubicació del directori de treball actual és:')

imprimir(directori_funcionament_actual)

Sortida:

La següent sortida apareixerà després d'executar l'script anterior. Aquí, a la sortida es mostra el camí del directori de treball actual sense el nom de l'script.





Exemple-2: utilitzar normpath () i abspath () per obtenir el directori de treball actual

L’ús del mòdul os és una altra manera de recuperar el directori de treball actual. Existeixen diferents mètodes a la classe de camins del mòdul OS per recuperar el directori de treball actual. The normpath () i mètodes abspath () són els dos. Aquests mètodes retornen el directori de treball actual com una cadena. Creeu un fitxer python amb el següent script per comprovar els propòsits d’aquestes funcions.





# Importa el mòdul os

importació vostè

# Imprimiu el directori de treball actual mitjançant la funció normpath ()

imprimir('El directori de treball actual (amb normpath ()) és:')

imprimir(vostè.Camí.nom de dir(vostè.Camí.normpath(__dossier__)))

# Imprimiu el directori de treball actual mitjançant la funció abspath ()

imprimir(' nEl directori de treball actual (amb abspath ()) és: ')

imprimir(vostè.Camí.abspath('.'))

Sortida:

La següent sortida apareixerà després d'executar l'script anterior. Aquí, a la sortida es mostra el camí del directori de treball actual sense el nom de l'script.



Exemple-3: utilitzar realpath () per obtenir el directori de treball actual

El realpath () és un altre mètode per recuperar el directori de treball actual. Creeu un fitxer python amb el següent script per imprimir el directori de treball actual amb el nom de script mitjançant el fitxer mètode realpath () . Al guió, es necessita el fitxer __dossier__ com a valor d’argument que conté la ruta del fitxer en què s’importa el mòdul OS.

# Importa el mòdul os

importació vostè

# Llegiu el directori de treball actual mitjançant la funció realpath ()

camí_real= vostè.Camí.realpath(__dossier__)

# Imprimiu el directori de treball actual amb el nom de l'script

imprimir(' nEl directori de treball actual amb el nom de l'script és: ')

imprimir(camí_real)

Sortida:

La següent sortida apareixerà després d'executar l'script anterior. Aquí es mostra a la sortida el camí del directori de treball actual amb el nom de l'script.

Exemple-4: utilitzar getcwd () per obtenir el directori de treball actual

Utilitzant el funció getcwd () del mòdul os és la forma més senzilla de recuperar el directori de treball actual de l'script d'execució. No conté cap argument i retorna el CWD com una cadena. Creeu un fitxer python amb el següent script per comprovar l'ús del fitxer funció getcwd () . El directori de treball actual s’imprimeix al principi de l’escriptura. A continuació, es canvia el camí del directori actual mitjançant el fitxer funció chdir () . El Comanda getcwd () es torna a cridar després de canviar el directori.

# Importa el mòdul os

importació vostè

# Imprimiu el directori de treball actual mitjançant la funció getcwd ()

imprimir('El directori de treball actual és: n', vostè.getcwd())

# Canvieu el directori de treball actual

vostè.chdir('/ etc / mail')

# Imprimiu el directori de treball actual després del canvi

imprimir(' nEl directori de treball actual després del canvi és: n', vostè.getcwd())

Sortida:

La següent sortida apareixerà després d'executar l'script anterior. Aquí s'ha imprès el camí del directori de treball actual sense el nom de l'script abans de canviar el directori. A continuació, s’ha imprès el camí del directori canviat.

Exemple-5: utilitzar getcwd () amb try-except per obtenir el directori de treball actual

Creeu un fitxer python amb el següent script per canviar el directori de treball actual en funció del valor d'entrada i gestionar diferents tipus d'errors. Executant l'script es poden gestionar tres tipus d'errors. El Error FileNotFoundError es generarà si el camí pres des de l'entrada no existeix. El NotADirectoryError error es generarà si el camí que es pren des de l'entrada no és un directori. El PermissionError error es generarà si el camí que es pren des de l'entrada no és accessible.

# Importeu el mòdul OS

importació vostè

# Introduïu el camí del directori

cwd= entrada('Introduïu la ruta del directori de treball actual: n')


provar:

# Canvieu el directori de treball actual

vostè.chdir(cwd)

# Imprimiu el directori de treball actual mitjançant la funció getcwd ()

imprimir('El directori de treball actual és: n', vostè.getcwd())

# Augmenteu l'error si el directori no existeix

excepteFileNotFoundError:

imprimir('El directori no existeix.')

# Augmenteu l'error si el camí d'entrada no és un directori

excepteNotADirectoryError:

imprimir('% s no és un directori'%(cwd))

# Augmenteu l'error si el directori no és accessible

exceptePermissionError:

imprimir('S'ha denegat el permís per canviar el directori.')

Sortida:

La sortida següent apareixerà després d'executar l'script anterior si existeix el camí d'accés. Aquí existeix el camí d’entrada pres i el directori de treball canviat s’ha imprès a la sortida.


La sortida següent apareixerà després d'executar l'script anterior si el camí no existeix.


La següent sortida apareixerà després d'executar l'script anterior si el camí d'accés pres no és accessible.

Conclusió:

L’ús dels mòduls pathlib i os per llegir el directori de treball actual es mostra en aquest tutorial mitjançant diferents exemples. En aquest tutorial també s’ha mostrat la manera de recuperar el directori de treball actual després de canviar el directori de treball actual segons l’entrada de l’usuari.