Kuinka saada nykyinen työhakemisto Pythonista

How Get Current Working Directory Python



Tiedoston tai kansion nimeä voidaan käyttää koko polun kanssa tai vain mainita tiedoston tai kansion nimi vain käyttää sitä komentosarjassa. Juurihakemiston tiedoston tai kansion koko polku määritetään absoluuttisella polulla. Kun tiedostonimeä käytetään ilman komentosarjan polunimeä, nykyinen työhakemisto oletetaan tiedoston polunimeksi ja sitä kutsutaan suhteelliseksi poluksi. Pythonissa Nykyinen työhakemisto on asetettu hakemistoon, josta python -komentosarja suoritetaan. Pythonissa on monia moduuleja nykyisen työhakemiston saamiseksi. Tässä opetusohjelmassa on esitetty tapoja hakea nykyinen työhakemisto käyttämällä eri moduuleja Pythonissa.

Esimerkki 1: Nykyisen työhakemiston hakeminen polku-moduulin avulla

Polun luokka pathlib -moduuli käytetään suorittavan komentosarjan nykyisen työhakemiston lukemiseen. Luo python -komentosarja, jossa on seuraava koodi, nykyisen työhakemiston lukemiseksi ja tulostamiseksi pathlib -moduulin avulla. The cwd () -menetelmä Path -luokasta tulostetaan nykyinen työhakemisto, josta komentosarja suoritetaan.







# Tuo polku pathlib -moduulista

alkaenpolkutuontiPolku

# Hae nykyisen työhakemiston polku

current_working_directory=Polku.cwd()

# Tulosta nykyisen työhakemiston sijainti

Tulosta('Nykyisen työhakemiston sijainti on:')

Tulosta(current_working_directory)

Lähtö:

Seuraava tulos tulee näkyviin yllä olevan komentosarjan suorittamisen jälkeen. Tässä lähdössä näkyy nykyisen työhakemiston polku ilman komentosarjan nimeä.





Esimerkki 2: Nykyisen työhakemiston hakeminen normpath (): n ja abspath (): n avulla

Os -moduulin käyttö on toinen tapa hakea nykyinen työhakemisto. Osamoduulin polkuluokassa on erilaisia ​​menetelmiä nykyisen työhakemiston noutamiseksi. Normipolku () ja abspath () -menetelmiä ovat he kaksi. Nämä menetelmät palauttavat nykyisen työhakemiston merkkijonona. Luo python -tiedosto seuraavalla komentosarjalla tarkistaaksesi näiden toimintojen tarkoitukset.





# Tuo os -moduuli

tuonti sinä

# Tulosta nykyinen työhakemisto normpath () -toiminnolla

Tulosta('Nykyinen työhakemisto (käyttäen normpath ()) on:')

Tulosta(sinä.polku.dirname(sinä.polku.normipolku(__file__)))

# Tulosta nykyinen työhakemisto käyttämällä abspath () -toimintoa

Tulosta('' nNykyinen työhakemisto (käyttäen abspath ()) on: ')

Tulosta(sinä.polku.abspaatti(''. ''))

Lähtö:

Seuraava tulos tulee näkyviin yllä olevan komentosarjan suorittamisen jälkeen. Tässä lähdössä näkyy nykyisen työhakemiston polku ilman komentosarjan nimeä.



Esimerkki 3: Käytä nykyistä työhakemistoa realpath (): n avulla

The realpath () on toinen tapa hakea nykyinen työhakemisto. Luo python -tiedosto seuraavalla komentosarjalla ja tulosta nykyinen työhakemisto komentosarjan nimellä käyttämällä realpath () -menetelmä . Käsikirjoituksessa se vie __file__ argumentin arvona, joka sisältää tiedoston polun, johon os -moduuli tuodaan.

# Tuo os -moduuli

tuonti sinä

# Lue nykyinen työhakemisto realpath () -toiminnolla

todellinen_polku= sinä.polku.realpath(__file__)

# Tulosta nykyinen työhakemisto komentosarjan nimellä

Tulosta('' nNykyinen työhakemisto, jossa on komentosarjan nimi, on: ')

Tulosta(todellinen_polku)

Lähtö:

Seuraava tulos tulee näkyviin yllä olevan komentosarjan suorittamisen jälkeen. Tässä nykyisen työhakemiston polku, jossa on komentosarjan nimi, näkyy tulostuksessa.

Esimerkki 4: Nykyisen työhakemiston hakeminen getcwd (): n avulla

Käyttämällä getcwd () -funktio os -moduulin on yksinkertaisin tapa noutaa suoritettavan komentosarjan nykyinen työhakemisto. Se ei sisällä argumentteja ja palauttaa CWD -merkkijonon. Luo python -tiedosto seuraavalla komentosarjalla, jotta voit tarkistaa getcwd () -funktio . Nykyinen työhakemisto tulostetaan komentosarjan alkuun. Seuraavaksi nykyinen hakemistopolku muutetaan käyttämällä chdir () -funktio . The getcwd () komento kutsutaan uudelleen hakemiston vaihdon jälkeen.

# Tuo os -moduuli

tuonti sinä

# Tulosta nykyinen työhakemisto getcwd () -toiminnolla

Tulosta('Nykyinen työhakemisto on: n'', sinä.getcwd())

# Vaihda nykyinen työhakemisto

sinä.chdir(' / etc / mail')

# Tulosta nykyinen työhakemisto muutoksen jälkeen

Tulosta('' nNykyinen työhakemisto muutoksen jälkeen on: n'', sinä.getcwd())

Lähtö:

Seuraava tulos tulee näkyviin yllä olevan komentosarjan suorittamisen jälkeen. Tässä nykyinen työhakemistopolku ilman komentosarjan nimeä on tulostettu ennen hakemiston vaihtamista. Seuraavaksi muutettu hakemistopolku on tulostettu.

Esimerkki 5: Getcwd (): n käyttäminen try-paitsi -toiminnon kanssa nykyisen työhakemiston saamiseksi

Luo python -tiedosto seuraavalla komentosarjalla muuttaaksesi nykyistä työhakemistoa syöttöarvon perusteella ja käsitelläksesi erilaisia ​​virheitä. Kolmen tyyppisiä virheitä voidaan käsitellä suorittamalla komentosarja. The FileNotFoundError -virhe luodaan, jos tulosta otettu polku ei ole olemassa. The NotADirectoryError -virhe luodaan, jos syötteestä otettu polku ei ole hakemisto. The PermissionError -virhe luodaan, jos tulosta otettu polku ei ole käytettävissä.

# Tuo os -moduuli

tuonti sinä

# Anna hakemiston polku

cwd= tulo('Anna nykyisen työhakemiston polku: n'')


yrittää:

# Vaihda nykyinen työhakemisto

sinä.chdir(cwd)

# Tulosta nykyinen työhakemisto getcwd () -toiminnolla

Tulosta('Nykyinen työhakemisto on: n'', sinä.getcwd())

# Nosta virhe, jos hakemistoa ei ole

paitsiFileNotFoundError:

Tulosta('Hakemistoa ei ole olemassa.')

# Nosta virhe, jos syöttöpolku ei ole hakemisto

paitsiNotADirectoryVirhe:

Tulosta('%s ei ole hakemisto'%(cwd))

# Nosta virhe, jos hakemisto ei ole käytettävissä

paitsiKäyttöoikeusvirhe:

Tulosta('Lupaa ei voi muuttaa hakemistosta.')

Lähtö:

Seuraava polku tulee näkyviin yllä olevan komentosarjan suorittamisen jälkeen, jos polku on olemassa. Tässä otettu syöttöpolku on olemassa ja muutettu työhakemisto on tulostettu lähtöön.


Seuraava polku näkyy, kun yllä oleva komentosarja on suoritettu, jos polkua ei ole.


Seuraava tuloste tulee näkyviin yllä olevan komentosarjan suorittamisen jälkeen, jos valittu polku ei ole käytettävissä.

Johtopäätös:

Pathlib- ja os -moduulien käyttö nykyisen työhakemiston lukemiseen on esitetty tässä opetusohjelmassa käyttämällä erilaisia ​​esimerkkejä. Tässä oppaassa on myös esitetty tapa hakea nykyinen työhakemisto sen jälkeen, kun nykyinen työhakemisto on muutettu käyttäjän syötteen perusteella.