Faila vai mapes nosaukumu var izmantot ar pilnu ceļu vai vienkārši pieminēt faila vai mapes nosaukumu, lai to izmantotu skriptā. Pilns faila vai mapes ceļš no saknes direktorija ir norādīts ar absolūtu ceļu. Ja faila nosaukums tiek izmantots bez ceļa nosaukuma skriptā, pašreizējais darba katalogs tiek uzskatīts par faila ceļa nosaukumu un to sauc par relatīvo ceļu. Programmā Python pašreizējais darba direktorijs ir iestatīts uz direktorijas atrašanās vietu, no kuras tiek izpildīts python skripts. Python pastāv daudzi moduļi, lai iegūtu pašreizējo darba direktoriju. Šajā apmācībā ir parādīti veidi, kā izgūt pašreizējo darba direktoriju, izmantojot dažādus Python moduļus.
1. piemērs: Pathlib moduļa izmantošana pašreizējā darba direktorija iegūšanai
Ceļu klase Pathlib modulis tiek izmantots izpildes skripta pašreizējā darba direktorija lasīšanai. Izveidojiet python skriptu ar šādu kodu, lai nolasītu un izdrukātu pašreizējo darba direktoriju, izmantojot pathlib moduli. The cwd () metode no Path klases tiek izmantots, lai drukātu pašreizējo darba direktoriju, no kura skripts tiek izpildīts.
# Importējiet ceļu no Pathlib moduļa
nopathlibimportētCeļš
# Izgūt pašreizējā darba direktorija ceļu
current_working_directory=Ceļš.cwd()
# Izdrukājiet pašreizējā darba direktorija atrašanās vietu
drukāt('Pašreizējā darba direktorija atrašanās vieta ir šāda:')
drukāt(current_working_directory)
Izeja:
Pēc iepriekš minētā skripta izpildes parādīsies šāda izvade. Šeit izejā ir parādīts pašreizējā darba direktorija ceļš bez skripta nosaukuma.
2. piemērs: izmantojot normpath () un abspath (), lai iegūtu pašreizējo darba direktoriju
Os moduļa izmantošana ir vēl viens veids, kā izgūt pašreizējo darba direktoriju. OS moduļa ceļu klasē pastāv dažādas metodes, lai izgūtu pašreizējo darba direktoriju. Normālceļš () un abspath () metodes ir divi no viņiem. Šīs metodes atgriež pašreizējo darba direktoriju kā virkni. Izveidojiet pitona failu ar šādu skriptu, lai pārbaudītu šo funkciju mērķus.
# Importēt os moduli
importēt jūs
# Drukājiet pašreizējo darba direktoriju, izmantojot funkciju normpath ()
drukāt('Pašreizējais darba direktorijs (izmantojot normpath ()) ir:')
drukāt(jūs.ceļš.dirname(jūs.ceļš.normatīvs(__fails__)))
# Drukājiet pašreizējo darba direktoriju, izmantojot funkciju abspath ()
drukāt(' nPašreizējais darba direktorijs (izmantojot abspath ()) ir šāds: ')
drukāt(jūs.ceļš.abspats(''. '))
Izeja:
Pēc iepriekš minētā skripta izpildes parādīsies šāda izvade. Šeit izejā ir parādīts pašreizējā darba direktorija ceļš bez skripta nosaukuma.
3. piemērs: izmantojot reālo ceļu (), lai iegūtu pašreizējo darba direktoriju
The īstais ceļš () ir vēl viena metode pašreizējā darba direktorija izgūšanai. Izveidojiet python failu ar šādu skriptu, lai izdrukātu pašreizējo darba direktoriju ar skripta nosaukumu, izmantojot reālā ceļa () metode . Skriptā tas aizņem __fails__ kā argumenta vērtību, kas satur faila ceļa nosaukumu, kurā tiek importēts os modulis.
# Importēt os moduliimportēt jūs
# Izlasiet pašreizējo darba direktoriju, izmantojot funkciju realpath ()
īsts_ceļš= jūs.ceļš.reālais ceļš(__fails__)
# Izdrukājiet pašreizējo darba direktoriju ar skripta nosaukumu
drukāt(' nPašreizējais darba direktorijs ar skripta nosaukumu ir šāds: ')
drukāt(īsts_ceļš)
Izeja:
Pēc iepriekš minētā skripta izpildes parādīsies šāda izvade. Šeit izejā ir parādīts pašreizējā darba direktorija ceļš ar skripta nosaukumu.
4. piemērs. Izmantojiet getcwd (), lai iegūtu pašreizējo darba direktoriju
Izmantojot getcwd () funkcija no os moduļa ir vienkāršākais veids, kā iegūt izpildes skripta pašreizējo darba direktoriju. Tas nesatur nevienu argumentu un atgriež CWD kā virkni. Izveidojiet python failu ar šādu skriptu, lai pārbaudītu getcwd () funkcija . Pašreizējais darba direktorijs tiek drukāts skripta sākumā. Pēc tam pašreizējais direktorijas ceļš tiek mainīts, izmantojot chdir () funkcija . The komanda getcwd () pēc direktorija maiņas tiek izsaukts vēlreiz.
# Importēt os moduliimportēt jūs
# Drukājiet pašreizējo darba direktoriju, izmantojot funkciju getcwd ()
drukāt('Pašreizējais darba direktorijs ir šāds: n', jūs.getcwd())
# Mainiet pašreizējo darba direktoriju
jūs.chdir(' / etc / mail')
# Pēc izmaiņām izdrukājiet pašreizējo darba direktoriju
drukāt(' nPašreizējais darba katalogs pēc izmaiņām ir šāds: n', jūs.getcwd())
Izeja:
Pēc iepriekš minētā skripta izpildes parādīsies šāda izvade. Šeit pirms direktorijas maiņas ir izdrukāts pašreizējais darba direktorija ceļš bez skripta nosaukuma. Tālāk ir izdrukāts mainītais direktorija ceļš.
5. piemērs: Getcwd () izmantošana ar try-izņemot, lai iegūtu pašreizējo darba direktoriju
Izveidojiet pitona failu ar šādu skriptu, lai mainītu pašreizējo darba direktoriju, pamatojoties uz ievades vērtību, un apstrādātu dažāda veida kļūdas. Izpildot skriptu, var tikt galā ar trīs veidu kļūdām. The FileNotFoundError kļūda tiks ģenerēts, ja no ievades ņemtais ceļš neeksistē. The NotADirectoryError kļūda tiks ģenerēts, ja ceļš, kas ņemts no ievades, nav direktorijs. The PermissionError kļūda tiks ģenerēts, ja ceļš, kas ņemts no ievades, nav pieejams.
# Importējiet OS moduliimportēt jūs
# Ievadiet direktorija ceļu
cwd= ievadi('Ievadiet pašreizējā darba direktorija ceļu: n')
pamēģini:
# Mainiet pašreizējo darba direktoriju
jūs.chdir(cwd)
# Drukājiet pašreizējo darba direktoriju, izmantojot funkciju getcwd ()
drukāt('Pašreizējais darba direktorijs ir šāds: n', jūs.getcwd())
# Paaugstiniet kļūdu, ja direktorija nepastāv
izņemotFileNotFoundError:
drukāt('Katalogs nepastāv.')
# Palieliniet kļūdu, ja ievades ceļš nav direktorijs
izņemotNotADirectoryKļūda:
drukāt('%s nav direktorijs'%(cwd))
# Paaugstiniet kļūdu, ja direktorijs nav pieejams
izņemotAtļaujas kļūda:
drukāt('Atļauja mainīt direktoriju.')
Izeja:
Ja ceļš pastāv, pēc iepriekš minētā skripta izpildes parādīsies šāda izvade. Šeit eksistē ievadītais ievades ceļš, un izvadā ir iespiests mainītais darba direktorijs.
Ja ceļš neeksistē, pēc iepriekš minētā skripta izpildes parādīsies šāda izvade.
Šāds iznākums parādīsies pēc iepriekšminētā skripta izpildes, ja izvēlētais ceļš nav pieejams.
Secinājums:
Pathlib un os moduļu izmantošana pašreizējā darba direktorija lasīšanai ir parādīta šajā apmācībā, izmantojot dažādus piemērus. Šajā apmācībā ir parādīts arī veids, kā izgūt pašreizējo darba direktoriju pēc pašreizējā darba direktorija mainīšanas, pamatojoties uz lietotāja ievadīto informāciju.