sys modul

16.1 sys modul 

Prvi modul koji želim da ti pokažem je sys. Kao što mu i ime govori, on sadrži neke specifične funkcije vezane za komunikaciju Pythona sa operativni sistemom koji ga pokreće. U ranijim primerima sam ti već pokazao jedan primer rada sa ovim modulom – video si kako u listi sys.argv Python čuva argumente prosleđene programu putem komandne linije.
Međutim, sys modul sadrži i mnogo više od ove liste. Možda u nekom trenutku želimo da proverimo koja verzija Python-a je instalirana na računaru korisnika, kako bi bili sigurni da se koristi Python3. Možemo koristiti sys modul da nam pruži i te informacije:
>>> import sys 
>>> sys.version_info 
sys.version_info(major=3, minor=3, micro=2, releaselevel='final', serial=0) 
>>> sys.version_info.major >= 3 
True 
>>> 
Modul sys sadrži promenljivu version_info, u kojoj su, unutar tuple, uskladištene informacije o verziji programa. Prvi podatak u tupli je glavna verzija Python programa. Ove informacije nam mogu poslužiti kao obezbeđenje da će naš program pokrenuti samo Python3.
Takođe, modul sys ima i funkciju sys.exit() koja nam služi da izađemo iz našeg programa na željenom mestu. Ukoliko ovoj funkciji prosledimo neki string, to će naš operativni sistem smatrati kao obaveštenje o greški koja se desila u programu:
>>> sys.exit('Python se skršio') 
Python se skršio 
lenj@lenj-Gm:~$ 
Vidimo da smo ovom komandom izašli iz interaktivnog prompta, i naš operativni sistem nam je prikazao zbog čega.
Možemo da uklopimo ove dve funkcionalnosti u jednu – skripta koja proverava mogućnost pokretanja programa?
Sačuvaj kao provera.py:
import sys 

if sys.version_info.major < 3: 
    sys.exit('Ovaj program treba da pokrene Python3!!!!!') 
else: 
    print('Ovaj program normalno radi.')
Kada ga pokrenemo:
$ python provera.py 
Ovaj program treba da pokrene Python3!!!!! 
$ python3 provera.py 
Ovaj program normalno radi. 
Ova skripta će jednostavno upozoriti korisnika da ne upotrebljava pravilnu verziju Pythona (ukoliko korisnik pokušava da pokrene program pomoću Python2), i neće pokrenuti program, ali, ako je sve u redu, program će da radi normalno.
Ovo je samo maleni delić mogućnosti koje nam modul sys pruža. Istraži i neke druge – slobodno, bez straha.

16 Standardne
biblioteke
Indeks 16.2 logging
modul

Primjedbe

Popularno

Kako televizija štetno utiče na Vaše zdravlje finansije?

Da li je TV kviz Slagalica "prevara"?

Tu je novi Qt creator 4.4.0!

Kada prijatelji odlaze

Microsoft objavio - nova verzija Windowsa stiže...

Sitnije promene na blogu...

Opet su se pojavili lažni kuponi brenda "IDEA" na društvenim mrežama

Poslednji pozdrav izgubljenom vremenu

Sistemska greška

Fake poet