Cum să obțineți directorul de lucru curent în Python

How Get Current Working Directory Python



Numele fișierului sau folderului poate fi utilizat cu calea completă sau doar menționând numele fișierului sau folderului doar pentru al utiliza în script. Calea completă a unui fișier sau folder din directorul rădăcină este specificată de calea absolută. Când numele fișierului este utilizat fără calea din script, atunci Directorul de lucru curent este asumat ca calea fișierului și se numește calea relativă. În Python, Directorul de lucru curent este setat la locația directorului de unde se execută scriptul python. Există multe module în python pentru a obține Directorul de lucru curent. Modurile de recuperare a Directorului de lucru curent utilizând diferite module din Python au fost prezentate în acest tutorial.

Exemplu-1: Utilizarea modulului pathlib pentru a obține Directorul de lucru curent

Clasa de cale a modulul pathlib este folosit pentru a citi directorul de lucru curent al scriptului de executare. Creați un script python cu următorul cod pentru a citi și imprima directorul de lucru curent utilizând modulul pathlib. The metoda cwd () din clasa Path este folosit pentru a imprima directorul de lucru curent de unde se execută scriptul.







# Importați calea din modulul pathlib

dinpathlibimportcale

# Recuperați calea directorului de lucru curent

director_de_funcționare curent=Cale.cwd()

# Imprimați locația directorului de lucru curent

imprimare(„Locația directorului de lucru curent este:”)

imprimare(director_de_funcționare curent)

Ieșire:

Următoarea ieșire va apărea după executarea scriptului de mai sus. Aici, calea directorului de lucru curent fără numele scriptului a fost afișată în ieșire.





Exemplu-2: Utilizarea normpath () și abspath () pentru a obține Directorul de lucru curent

Utilizarea modulului os este un alt mod de a prelua directorul de lucru curent. Există diferite metode în clasa de cale a modulului os pentru a prelua directorul de lucru curent. Normpath () și metode abspath () sunt cei doi. Aceste metode returnează directorul de lucru curent ca un șir. Creați un fișier python cu următorul script pentru a verifica scopul acestor funcții.





# Importați modulul os

import tu

# Imprimați directorul de lucru curent utilizând funcția normpath ()

imprimare('Directorul de lucru curent (folosind normpath ()) este:')

imprimare(tu.cale.dirname(tu.cale.normpath(__fişier__)))

# Imprimați directorul de lucru curent utilizând funcția abspath ()

imprimare(' nDirectorul de lucru curent (folosind abspath ()) este: ')

imprimare(tu.cale.abspath('.'))

Ieșire:

Următoarea ieșire va apărea după executarea scriptului de mai sus. Aici, calea directorului de lucru curent fără numele scriptului a fost afișată în ieșire.



Exemplu-3: Utilizarea realpath () pentru a obține Directorul de lucru curent

The realpath () este o altă metodă de recuperare a directorului de lucru curent. Creați un fișier python cu următorul script pentru a imprima directorul de lucru curent cu numele scriptului utilizând metoda realpath () . În scenariu, este nevoie de __fişier__ ca valoare a argumentului care conține calea fișierului în care este importat modulul os.

# Importați modulul os

import tu

# Citiți directorul de lucru curent utilizând funcția realpath ()

real_path= tu.cale.realpath(__fişier__)

# Imprimați directorul de lucru curent cu numele scriptului

imprimare(' nDirectorul de lucru curent cu numele scriptului este: ')

imprimare(real_path)

Ieșire:

Următoarea ieșire va apărea după executarea scriptului de mai sus. Aici, calea directorului de lucru curent cu numele scriptului a fost afișată în ieșire.

Exemplu-4: Utilizarea getcwd () pentru a obține Directorul de lucru curent

Folosind funcția getcwd () din modulul os este cel mai simplu mod de a recupera directorul de lucru curent al scriptului de executare. Nu conține niciun argument și returnează CWD ca șir. Creați un fișier python cu următorul script pentru a verifica utilizarea fișierului funcția getcwd () . Directorul de lucru curent este tipărit la începutul scriptului. Apoi, calea directorului curent este modificată folosind funcția chdir () . The comanda getcwd () este apelat din nou după schimbarea directorului.

# Importați modulul os

import tu

# Imprimați directorul de lucru curent utilizând funcția getcwd ()

imprimare(„Directorul de lucru curent este: n', tu.getcwd())

# Schimbați directorul de lucru curent

tu.chdir(„/ etc / mail”)

# Imprimați directorul de lucru curent după modificare

imprimare(' nDirectorul de lucru curent după modificare este: n', tu.getcwd())

Ieșire:

Următoarea ieșire va apărea după executarea scriptului de mai sus. Aici, calea directorului de lucru curent fără numele scriptului a fost tipărită înainte de a schimba directorul. Apoi, calea directorului modificat a fost tipărită.

Exemplu-5: Utilizarea getcwd () cu try-except pentru a obține Directorul de lucru curent

Creați un fișier python cu următorul script pentru a schimba directorul de lucru curent pe baza valorii de intrare și pentru a gestiona diferite tipuri de erori. Trei tipuri de erori pot fi gestionate prin executarea scriptului. The Eroare FileNotFoundError va fi generat dacă calea luată de la intrare nu există. The Eroare NotADirectoryError va fi generat dacă calea luată de la intrare nu este un director. The Eroare PermissionError va fi generat dacă calea luată de la intrare nu este accesibilă.

# Importați modulul os

import tu

# Introduceți calea directorului

cwd= intrare('Introduceți calea directorului de lucru curent: n')


încerca:

# Schimbați directorul de lucru curent

tu.chdir(cwd)

# Imprimați directorul de lucru curent utilizând funcția getcwd ()

imprimare(„Directorul de lucru curent este: n', tu.getcwd())

# Creșteți eroarea dacă directorul nu există

cu exceptiaFileNotFoundError:

imprimare(„Directorul nu există.”)

# Creșteți eroarea dacă calea de intrare nu este un director

cu exceptiaNotADirectoryError:

imprimare('% s nu este un director'%(cwd))

# Creșteți eroarea dacă directorul nu este accesibil

cu exceptiaPermissionError:

imprimare(„Nu s-a permis permisiunea de a schimba directorul.”)

Ieșire:

Următoarea ieșire va apărea după executarea scriptului de mai sus dacă calea există. Aici există calea de intrare luată și directorul de lucru modificat a fost tipărit în ieșire.


Următoarea ieșire va apărea după executarea scriptului de mai sus dacă calea nu există.


Următoarea ieșire va apărea după executarea scriptului de mai sus dacă calea luată nu este accesibilă.

Concluzie:

Utilizarea modulelor pathlib și os pentru a citi directorul de lucru curent este prezentată în acest tutorial folosind diferite exemple. Modul de recuperare a directorului de lucru curent după schimbarea directorului de lucru curent pe baza introducerii utilizatorului a fost, de asemenea, prezentat în acest tutorial.