Piton

Python Glob funkcija

Python Glob funkcija

Python je jedan od najčešće korištenih programskih jezika opće namjene u posljednje vrijeme. Pruža brojne ugrađene module, funkcije i ključne riječi za izvršavanje zadataka povezanih s datotekama. Glob je pojam koji se odnosi na tehnike korištene za podudaranje određenih uzoraka prema pravilima vezanim uz UNIX ljusku. Operativni sustavi zasnovani na Linuxu i UNIX-u pružaju funkciju glob () za pronalaženje datoteka i direktorija prema zadanom obrascu. Python također nudi ugrađeni glob modul za pristup datotekama i imenima staza koje odgovaraju navedenom uzorku ili ih dohvaća. Za zadatke opisane u ovom članku koristit ćemo funkciju Python glob () modula glob. Ovaj članak objašnjava kako pomoću funkcije glob () pronaći nazive staza i imena datoteka prema zadanom obrascu.

Primjer 1: Uskladite ime datoteke ili naziv puta s apsolutnim putem

Pogledajmo nekoliko primjera kako bismo razumjeli funkcioniranje i rad funkcije glob (). Započet ćemo s jednostavnim primjerom podudaranja imena datoteke ili puta s apsolutnim putem. Ako se naziv datoteke ili naziv staze podudara s apsolutnom stazom, funkcija glob () vraća podudaranja u obliku popisa; u suprotnom, funkcija glob () vraća prazan popis.

#importing glob modula
uvoz glob
# koristeći funkciju glob za podudaranje naziva puta s apsolutnim putem
#matching apsolutni put direktorija preuzimanja
ispis (glob.glob ("/ home / linuxhint / Downloads"))
#matching apsolutni put direktorija dokumenata
ispis (glob.glob ("/ home / linuxhint / Documents"))
#matching apsolutni put radne površine
ispis (glob.glob ("/ home / linuxhint / Desktop"))
#matching apsolutni put datoteka
ispis (glob.glob ("/ home / linuxhint / Desktop / script.sh "))
ispis (glob.glob ("/ home / linuxhint / Downloads / format.py "))
ispis (glob.glob ("/ home / linuxhint / Documents / calculator.py "))
#navođenje puta datoteke koja ne postoji
# funkcija glob vratit će prazan popis
ispis (glob.glob ("/ home / linuxhint / Documents / myfile.py "))

Izlaz

Izlaz prikazuje podudaranja.

Primjer 2: Korištenje zamjenskih znakova za pronalaženje puta

Za pronalaženje puta moguće je koristiti zamjenske znakove s funkcijom glob (). Zamjenski znakovi koji se najčešće koriste su zvjezdica (*), upitnik (?), raspon brojeva [0-9] i abeceda raspon [a-z].  Prvo ćemo razgovarati o upotrebi zvjezdice u funkciji glob ().

Upotreba zamjenskog znaka zvjezdice (*) za pronalaženje puta

Zvjezdani operater zamjenskog znaka koristi se za podudaranje nula ili više znakova apsolutne staze. Ako sa zvjezdicom nisu navedeni nikakvi znakovi, tada će funkcija navesti apsolutni put svih datoteka, direktorija i poddirektorijuma zadane staze. Zvjezdicom također možete napisati neke znakove i to će odgovarati apsolutnom putu na temelju zadanih znakova. Na primjer, ako trebate pronaći apsolutni put .txt datoteke, tada se * zamjenski znak može koristiti kao *.txt.

To ćemo implementirati u našu Python skriptu.

#uvoz modula glob
uvoz glob
# pronalaženje apsolutnog puta datoteka i direktorija
ispis (glob.glob ("/ home / linuxhint / Downloads / *"))
ispis ("----------------------------------------")
# pronalaženje apsolutnog puta .txt datoteke u direktoriju Desktop
ispis (glob.glob ("/ home / linuxhint / Desktop / *.txt "))
ispis ("----------------------------------------")
# pronalaženje apsolutnog puta .sh datoteke u direktoriju Desktop
ispis (glob.glob ("/ home / linuxhint / Desktop / *.sh "))
ispis ("----------------------------------------")
# pronalaženje apsolutnog puta .py datoteke u direktoriju Dokumenti
ispis (glob.glob ("/ home / linuxhint / Documents / *.py "))
ispis ("----------------------------------------")

Izlaz

Izlaz prikazuje apsolutni put datoteka i direktorija prema definiranim pravilima u funkciji globe ().

Korištenje upitnika (?) Operator zamjenskih znakova

Znak pitanja (?) zamjenski operator koristi se za podudaranje s jednim znakom. To može biti korisno u situacijama kada niste svjesni niti jednog znaka u danom imenu.

To ćemo implementirati u našu Python skriptu.

#importing glob modula
uvoz glob
# pronalaženje datoteke pomoću * zamjenskog operatora
ispis (glob.glob ("/ home / linuxhint / Desktop / datoteka?.txt "))

Izlaz

Izlaz prikazuje odgovarajuće datoteke.

Upotreba operativnog zamjenskog znaka dometa

Zamjenski operator raspona koristi se za podudaranje datoteka u zadanom rasponu znakova ili brojeva. Raspon je definiran unutar uglatih zagrada [].

Apsolutni put datoteka pronaći ćemo definiranjem raspona.

#uvoz modula glob
uvoz glob
# pronalaženje apsolutnog puta datoteka u zadanom rasponu
#definiranje raspona u znakovima
ispis (glob.glob ("/ home / linuxhint / Desktop / [a-f] *"))
#print isprekidana crta za razlikovanje rezultata
ispis ("------------------------------------------")
#definiranje raspona u brojevima
ispis (glob.glob ("/ home / linuxhint / Desktop / [1-5] *"))

Izlaz

Rekurzivno pronalaženje datoteka pomoću glob ()

Glob funkcija kao argument uzima dva parametra. Prvi parametar definira naziv puta, a drugi parametar definira rekurzivno svojstvo. Drugi je parametar neobavezan, a rekurzivno svojstvo je prema zadanim postavkama postavljeno na "false". Međutim, rekurzivno svojstvo možete postaviti na "true" da biste rekurzivno pronašli put do datoteke.

Postavit ćemo rekurzivno svojstvo jednako "true" u našoj Python skripti i pronaći ćemo apsolutni put datoteka rekurzivno.

#importing glob modula
uvoz glob
# pronalaženje datoteka rekurzivno
ispis (glob.glob ("/ home / linuxhint / Documents / *", rekurzivno = True))

Izlaz

Zaključak

Glob je uobičajeni pojam koji se odnosi na tehnike korištene za podudaranje određenih uzoraka prema pravilima vezanim uz UNIX ljusku. Python nudi ugrađeni glob modul i funkciju za pristup imenima staza prema zadanim pravilima. Ovaj članak objašnjava kako pomoću raznih funkcija koristiti glob () za pronalaženje putova.

Vulkan za korisnike Linuxa
Sa svakom novom generacijom grafičkih kartica vidimo da programeri igara pomiču granice grafičke vjernosti i dolaze na korak od fotorealizma. No, bez ...
OpenTTD vs Simutrans
Stvaranje vlastite simulacije prijevoza može biti zabavno, opuštajuće i izuzetno primamljivo. Zbog toga morate isprobati što više igara kako biste pro...
Vodič za OpenTTD
OpenTTD je jedna od najpopularnijih igara za poslovnu simulaciju. U ovoj igri morate stvoriti prekrasan prijevoznički posao. Međutim, počet ćete u poč...