Kaip pakeisti darbo katalogą „Python“

How Change Working Directory Python



Darbinis katalogas yra dabartinis katalogas, kuriame mes dirbame ir iš kurio vykdomas scenarijus; Šiame kataloge turime prieigą prie daugelio failų (tų, kurie yra jo viduje). Tačiau kartais turime pakeisti katalogus ir judėti pirmyn ir atgal tarp failų ir aplankų. Šioje pamokoje sužinosime, kaip pakeisti „Python“ darbo katalogą.

OS MODULIS

Visų pirma, norint tai pasiekti, mums reikės os modulio „Python“. Kadangi jis yra iš anksto įdiegtas, nieko nereikia diegti. OS modulis paprastai naudojamas „Python“, kad galėtų sąveikauti, tvarkyti ir keisti sistemos failus ir aplankus. Pavyzdžiui, galime sukurti/pašalinti katalogus, pakeisti veikiančius katalogus, peržiūros failus, patikrinti, ar yra failų ir tt ... Nereikia nė sakyti, kad tai labai naudingas modulis.







Gaunamas dabartinis darbo katalogas

Norėdami gauti dabartinį darbo katalogą, naudojame getcwd () metodas iš os modulio. Atkreipkite dėmesį, kad čia nėra jokių argumentų. Mano atveju išėjimas buvo /home/kalyani/PycharmProjects/pythonProject1 „Ubuntu“ kompiuteryje (kuriame veikia „PyCharm“). Tai reiškia, kad pagrindinis scenarijus - main.py - yra šiame aplanke (pythonProject1). Ir atminkite, kad darbo katalogas, pirmiausia aplankas!



importas tu

# Gaukite dabartinį darbo katalogą

dabartinis_katalogas= tu.getcwd()

spausdinti(„Dabartinis jūsų darbo katalogas yra %s“% current_directory)



Dabartinio darbo katalogo keitimas

Darbo katalogą lengva pakeisti naudojant metodą „chdir ()“, kuris turi tiksliai vieną argumentą - kelią į naują vietą kaip eilutę.





importas tu

# Gaukite dabartinį darbo katalogą

dabartinis_katalogas= tu.getcwd()

spausdinti(„Dabartinis jūsų darbo katalogas yra %s“% current_directory)

Pirmas dalykas, kurį reikia padaryti, yra nustatyti naują kelią į darbo katalogą. „Ubuntu“ tai labai paprasta!

# nustatykime naują darbo katalogą

new_working_directory= '/home/kalyani/Desktop/PythonDirectory'

„Windows“ sistemoje katalogui apibrėžti reikia naudoti dvigubas atbulines brūkšnius.



#new_working_directory = 'C: Users \ never \ Desktop \ PythonDirectory'

Toliau mes apibrėžiame išlygą, išskyrus bandymą. Jei kelias egzistuoja, mes naudosime metodą chdir (), norėdami pakeisti darbo katalogą į naują darbo katalogą. Jei kelias nėra katalogas, jis sukels klaidą!

bandyti:

tu.chdir(new_working_directory)

spausdinti('Darbo katalogas buvo pakeistas!')

spausdinti('WD: %s'%tu.getcwd())


išskyrusNotADirectoryError:

spausdinti('Jūs nepasirinkote katalogo.')


išskyrusFileNotFoundError:

spausdinti(„Aplankas nerastas. Kelias neteisingas “.)


išskyrusLeidimo klaida:

spausdinti('Jūs neturite prieigos prie šio aplanko/failo.')

Visas kodas atrodys taip:

importas tu

# Gaukite dabartinį darbo katalogą

dabartinis_katalogas= tu.getcwd()

spausdinti(„Dabartinis jūsų darbo katalogas yra %s“% current_directory)

# nustatykime naują darbo katalogą

#new_working_directory = '/home/kalyani/Desktop/PythonDirectory'

new_working_directory=r'C: Utarnauti nkada nors Dstalviršis PythonDirectory '

bandyti:

tu.chdir(new_working_directory)

spausdinti('Darbo katalogas buvo pakeistas!')

spausdinti('WD: %s'%tu.getcwd())


išskyrusNotADirectoryError:

spausdinti('Jūs nepasirinkote katalogo.')


išskyrusFileNotFoundError:

spausdinti(„Aplankas nerastas. Kelias neteisingas “.)


išskyrusLeidimo klaida:

spausdinti('Jūs neturite prieigos prie šio aplanko/failo.')

Tiesą sakant, klaidos gali sukelti įvairių tipų išimčių:

i. NotADirectoryError:

Tarkime, pavyzdžiui, aš parašiau šį kelio arba naujo darbo katalogo kodą:

new_working_directory= 'C:\Vartotojai\niekada\Stalinis kompiuteris\„Python“ katalogas\text.txt '

Čia galite pastebėti, kad aš nurodau kelią į tekstinį dokumentą, pavadintą text.txt. Ir pastarasis išmes klaidą, žinomą kaip NotADirectoryError. Kitaip tariant, jūsų kelias turi nukreipti į tam tikrą katalogą.

ii. FileNotFoundError:

„FileNotFoundError“ išmetama, kai kelio nėra. Taigi, tarkime, kad šiuo metu darbalaukyje neturiu katalogo, pavadinto „PythonDirectory“, ir kad nustatysiu savo kelią į:

new_working_directory= 'C: Utarnauti nkada nors Dstalviršis PythonDirectory '

Tai išmes a FileNotFoundError . Ši klaida paprasčiausiai reiškia, kad katalogas, į kurį nurodome, neegzistuoja arba nerastas.

iii. Leidimo klaida:

Į PermissionError iškeliamas, kai vartotojas neturi tinkamų leidimų keisti ar pasiekti pasirinktą katalogą.

iv. Sintaksės klaida:

Sintaksės klaida atsiranda, kai kelyje yra sintaksės klaida. Jei rašome sistemoje „Windows“, norėdami pasakyti:

new_working_directory= 'C: Utarnauti nkada nors Dstalviršis PythonDirectory '

Meta sintaksės klaida! Tačiau sintaksės klaidą pastebėti yra daug sunkiau, nes ją reikia įvertinti, importuoti ar vykdyti. Taigi, kai rašome blokus, išskyrus bandymus, sunkiau pastebėti tokią klaidą.

„Windows“ sistemoje, kad būtų išvengta klaidų, kelias gali būti parašytas vienu iš trijų skirtingų būdų, kad nebūtų išmestos klaidos:

1 metodas: Šiuo metodu prieš išdėstydami eilutę, pridedame r.

new_working_directory=r'C: Utarnauti nkada nors Dstalviršis PythonDirectory '

2 metodas: mes naudojame dvigubas pasvirąsias brūkšnius.

new_working_directory= 'C:\Vartotojai\niekada\Stalinis kompiuteris\„PythonDirectory“

3 metodas: mes naudojame vieną pasvirąjį brūkšnį.

new_working_directory= „C:/Vartotojai/niekada/Desktop/PythonDirectory“

KELIŲ MODULIS

Taip pat galime pakeisti darbo katalogą naudodami kelio modulį. Pirmiausia įdiekite kelią taip (taip pat pateikiau nuorodą į modulį):

pip montavimo kelias

(https: // pypi.org/project/path/)

Toliau rašome:

nuokeliasimportasKelias

importas tu

Pirmiausia patikrinkime dabartinį darbo katalogą naudodami os modulį ir metodą getcwd ().

# patikrinkime dabartinį darbo katalogą

cwd= tu.getcwd()

spausdinti(„Dabartinis darbo katalogas yra: %s“% cwd)

spausdinti('---------------------------------------------')

Tada nustatykite kelią į naują darbo katalogą. Šiuo atveju pasirinkau rodyti pavyzdį „Windows“ kompiuteryje:

# nustatykite kelią į naują darbo katalogą

new_path= 'C:\Vartotojai\niekada\Stalinis kompiuteris\„PythonDirectory“

Norėdami pakeisti darbo katalogą, naudokite kelią (). Path () čia pateikia tik vieną argumentą: tikrąjį kelią į naują darbo katalogą ir užduočiai atlikti naudoja metodą chdir ().

# pakeisti darbo katalogą

Kelias(new_path).chdir()

Dar kartą patikrinkite, ar darbo katalogas nebuvo pakeistas. Ir čia, kaip matote paveikslėlyje, darbo katalogas tikrai buvo pakeistas!

# Dar kartą patikrinkite darbo katalogą

# ar jis pakeistas?

cwd= tu.getcwd()

spausdinti('Naujas darbo katalogas yra %s'% cwd)

Darbo katalogų keitimas yra lengva užduotis ir reikalauja tik vieno metodo - chdir (kelio) metodo. Tačiau, priklausomai nuo to, ar naudojate „Windows“, ar „Linux“ kompiuterį, turite būti atsargūs, kaip įvesti kelią kaip eilutę. Jei įvesite neteisingai, tai gali sukelti klaidą!

Laimingo kodavimo!