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

Коментари

Popularno

Tehnički problemi (i ostala tehnička čudesa) u najavi (i u bliskoj istoriji)

Izvršavanje Python programa

Instalacija uz pomoć WUBI-ja

Vredela si svakoga stiha

Python tutorijal - indeks postova

Izbor uređivača teksta (Editora)

Kreiranje izvorne datoteke

Sistem te laže?!? (prvi deo - pitanja)

Prevelika očekivanja

Kako blokirati neželjene oglase koje AdSense pokazuje na Vašoj web lokaciji