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 -moduulituonti 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 -moduulituonti 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 -moduulituonti 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.