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 ovog meseca

Gde pronaći novosti sa facebook stranica nakon velike promene koja ga je zadesila?

Dva načina da vratite svoj Windows 10 na fabričke vrednosti

Kako preuzeti video koji je neko postavio na facebook-u bez upotrebe dodatnih programa?

Više neće biti moguć besplatan prelazak na Windows 10

Prijateljski meč ŠK "Titel" - ŠK "Bukovac"

Kako manipulisati Windows licencom pomoću slmgr komande?

Tu je novi Qt creator 4.4.0!

Fake poet

Da li je poželjno biti anoniman na internetu (ili se predstavljati punim imenom i prezimenom)?

Kosmička era može da počne! 10, 9, 8, 7.... Naravno, pre 60 godina...