Programiranje

9 korisnih savjeta Rad s operativnim sustavom pomoću Pythona

9 korisnih savjeta Rad s operativnim sustavom pomoću Pythona

Postoji nekoliko situacija kada želimo raditi s operativnim sustavom pomoću Pythona. Možda ćemo htjeti vidjeti korisničke detalje ili ćemo htjeti obaviti neke zadatke s datotekama i direktorijima. Ako ste administrator sustava, bit će vam korisno raditi s operativnim sustavom jer se lako mogu automatizirati neki ponavljajući zadaci operativnog sustava pomoću Pythona.

Iako se isti zadaci mogu izvoditi pomoću osnovnog skriptiranja ljuske, on ima ograničene mogućnosti i neće vam dati toliko snage kao u Pythonu. Uz to, ista python skripta može se koristiti bilo gdje, a također integrirati kodove u druge python projekte. Postoji velik broj modula za rad s operativnim sustavom u Pythonu. Neki od modula koji su uključeni u Pythonovu standardnu ​​knjižnicu i dobro rade s operativnim sustavima jesu os / put, pwd, glob, šutil, i potproces.

Prije nego što započnete s ovim vodičem, morate instalirati Python. Ako ga već niste instalirali, pogledajte naš korak po korak vodič za instalaciju Pythona na Linux.

Dohvaćanje OS podataka pomoću Pythona

Ponekad ćete možda htjeti dohvatiti potrebne podatke operativnog sustava poput korisničkog imena, korisničkog ID-a ili samo imena operativnog sustava. Osim toga, program će možda morati znati na kojem se operacijskom sustavu radi kako bi mogao prilagoditi zadatke za različite OS-e.

1. Dohvaćanje detalja o operativnom sustavu

Možemo dobiti detalje operativnog sustava kao što su platforma, naziv distribucije Linuxa (ako koristite Linux), naziv OS sustava itd. koristeći Python. Da bismo dobili ime operativnog sustava, možemo koristiti module os ili sys. Ti su moduli uključeni u standardnu ​​knjižnicu Pythona, pa ih ne trebamo instalirati za upotrebu u našim projektima. Python ljusku možete otvoriti upisivanjem Python ili python3 u terminalu sustava.

piton

ILI

python3

Tip OS možete dobiti pomoću os knjižnicu pokretanjem sljedećeg koda u ljusci pythona.

>>> uvoz os >>> os.ime 'posix'

Kao što vidite, gornji kod je imao display posix za operativni sustav Linux. Ako koristite Windows, prikazat će se 'nt.'Naziv operacijskog sustava možete dobiti i pomoću sys modula. Možete pokrenuti sljedeći kôd da biste vidjeli kako to radi.

>>> uvoz sys >>> sys.platforma 'linux'

Kao što vidite, rezultat funkcije platforme sys modula pokazao je naziv Linux dok ga koristim. Dobit ćete "win 32" za prozore.

Možete koristiti uname funkcija os modula da biste dobili detaljan opis, pogledajte sljedeći kod da biste vidjeli kako to radi.

>>> uvoz os >>> os.uname () posix.uname_result (sysname = 'Linux', nodename = "kali", release = "5.6.0-kali2-amd64 ", version =" # 1 SMP Debian 5.6.14-2kali1 (2020-06-10) ", stroj =" x86_64 ")

Ovaj je kôd pokazao da koristim Kali Linux. Ovaj je kôd dostupan samo za Linux OS. Ne odnosi se na Windows.

2. Dobivanje korisničkog imena pomoću Pythona

Ime trenutne korisničke prijave u sustav možete dobiti pomoću Pythona upisivanjem sljedećeg koda u ljusku pythona:

>>> uvoz os >>> os.getlogin () 'roshan'

3. Dobivanje veličine terminala

Veličinu terminala možete dobiti i pomoću Pythona. Pokrenite sljedeći kod u ljusci pythona.

>>> uvoz os >>> os.get_terminal_size () os.veličina_terminala (stupci = 80, redovi = 23)

Ovo će ispisati veličinu trenutnog terminala. To će napisati dvije vrijednosti broj stupaca i broj redaka. Pojedinim se stupcima ili redovima može pristupiti pomoću sljedećeg koda. Kopirajte sljedeći program u naziv datoteke it terminal.py i pokrenite ga pomoću python3 terminal.py.

uvoz os col, linije = os.get_terminal_size () print ("Broj stupaca:", col) print ("Broj redaka:", redaka)

Rezultat programa možete vidjeti kako je prikazano dolje:-

Izlaz

Izvođenje osnovnih operacija s datotekama i direktorijima

Pogledajmo sada kako raditi s datotekama i direktorijima pomoću Pythona. Python je postao zreo programski jezik i sada može raditi zadatke za koje trebamo naučiti različite programske jezike. Python je također dobar u automatizaciji nekoliko zadataka povezanih s datotekama i mapama te u automatskoj upotrebi sljedećih kodova. Možete izvršiti automatizaciju poput čišćenja mapa, premještanja datoteka s određenim formatima s jednog mjesta na drugo itd.

4. Dobivanje putanje trenutnog direktorija

Da bismo dobili trenutnu putanju direktorija, možemo koristiti funkciju getcwd () os modula; to je slično naredbi pwd Linux ljuske.

>>> uvoz os >>> os.getcwd () '/ home / roshan / Documents / fosslinux'

Kao što vidite, kod je dao put do direktorija u kojem koristim python ljusku.

5. Navedite sve datoteke i mape prisutne u direktoriju

Također možete navesti sve datoteke i poddirektorije prisutne u direktoriju. Da biste popisali datoteke i mape u trenutnom direktoriju, pokrenite sljedeći kod:

>>> uvoz os >>> os.listdir () 

Izlaz podsjeća na nešto poput donje slike. Gornji kod prikazuje python popis svih datoteka i direktorija prisutnih u trenutnom radnom direktoriju.

Također možete navesti datoteke i poddirektorij koji se nalaze u drugom direktoriju davanjem putanje direktorija u zagradi. Pogledajte sljedeći kod da biste shvatili kako to radi.

>>> uvoz os >>> os.listdir ("/ root / radna površina") 

Možda ćete vidjeti izlaz gornjeg koda kao što je prikazano na sljedećoj slici

Izlaz koji daje listdir ("D: / python") metoda je python popis svih datoteka i direktorija prisutnih u direktoriju "D: / python". Ako put direktorija koji navedete u zagradi ne postoji u sustavu, tada će se podići a FileNotFoundError.

6. Stvaranje direktorija

Da biste kreirali direktorij pomoću Pythona, trebate koristiti mkdir funkcija Pythonovog os modula. Pogledajmo kako stvoriti direktorij pomoću Pythona. Pokrenite sljedeći kod u ljusci pythona.

>>> uvoz os >>> os.mkdir ("os")

Ovo će stvoriti os direktorija u trenutnom direktoriju. Ako direktorij već postoji, dobit ćete FileExistError; To može izgledati otprilike ovako:

Traceback (najnoviji zadnji poziv): Datoteka "", redak 1, u  FileExistsError: [Errno 17] Datoteka postoji: 'os'

Za bolje rukovanje pogreškama probati i osim. Trebate jednostavno kopirati kod i zalijepiti ga u datoteku koja se zove makedir.py i pokrenite program python pomoću naredbe python3 makedir.py u vašem terminalu;

import os path = "os" try: os.mkdir (put) print ("Direktorij je uspješno stvoren") osim FileExistsError: print ("Direktorij s nazivom" + put + "već postoji")

Izlaz ćete možda vidjeti nešto poput sljedeće slike:

Razlika u prvom kodu i gornjem kodu je u tome što drugi program koristi metodu try / osim za rukovanje pogreškama. Uloga metode try / osim u gornjem kodu je da će python interpreter prvo pokušati pokrenuti kôd pod blokom try, a ako je dobio FileExistError, izvršit će kôd pod blokom osim. Ovo je dobra praksa za korištenje bloka try / osim u programu python, tako da možete lako otkriti pogrešku i pokrenuti blok koda prisutan u dijelu osim ako postoji pogreška.

7. Preimenujte datoteku

Datoteku također možete preimenovati pomoću Pythona. Da biste preimenovali datoteku, upotrijebite funkciju preimenovanja os modula. Funkcija preimenovanja prihvaća dva važna argumenta, prvi argument je put do datoteke koju želite preimenovati, a druga datoteka je ime u koje želite preimenovati izvornu datoteku. Pogledajte dolje predstavljeni kôd da biste vidjeli kako to radi, upišite kôd u ljusku pythona i pogledajte njegov rad.

>>> uvoz os >>> os.preimenovati ("datoteka1.txt, datoteka2.txt ")

Gornji kod preimenovat će datoteku datoteka1.txt s imenom datoteka2.txt. To će prikazati pogrešku ako datoteka datoteka1.txt nije prisutan u zadanom putu, zato navedite ispravan put.

8. Izbrišite datoteku

Da biste izbrisali datoteku, trebate koristiti ukloniti() funkcija os modul. Pogledajte sljedeći kod da biste vidjeli kako to učiniti -

>>> uvoz os >>> os.remove ("uzorak.txt ")

Ovo će izbrisati datoteku uzorak.txt prisutan u trenutnom direktoriju; također možete dati put do datoteke ako je ona prisutna u drugim direktorijima. Ako datoteka ne postoji u zadanom putu, dobit ćete FileNotFoundError. Za rješavanje pogrešaka koristite metodu rukovanja iznimkama navedenu u prethodnoj podtemi.

9. Izbrišite direktorij

Ako je predviđeno staza je direktorij, dobit ćete OSError jer se ova funkcija ne može koristiti za uklanjanje direktorija. Koristiti rmdir ()metoda za uklanjanje direktorija. Pogledajte slijedeći kod za bolju ilustraciju-

>>> uvoz os >>> os.rmdir ("sample_dir")

Gornji kôd uklonit će imenovani direktorij uzorak_dir. Give put mapa ako su prisutne u drugim direktorijima da ih uklonimo.

Zaključak

Sve su to razni korisni savjeti za učinkovito dohvaćanje operativnog sustava i ostale informacije potrebne za korištenje Pythona. Koje još savjete imate i koje ste spremni podijeliti? Obavijestite nas u komentarima ispod. Prije odlaska, možda ćete htjeti vidjeti i vodič o tome kako izvršiti naredbu ljuske s Pythonom, koja vam pokazuje kako lako koristiti Linux naredbe ljuske pod programima python.

Kako pojačati FPS u Linuxu?
FPS je kratica Okviri u sekundi. Zadatak FPS-a je mjerenje broja sličica u reprodukcijama video zapisa ili igranim izvedbama. Jednostavnim riječima, b...
Najpopularnije laboratorijske igre Oculus App
Ako ste vlasnik slušalica Oculus, tada morate biti sigurni u bočno učitavanje. Bočno učitavanje postupak je instaliranja nehranjenog sadržaja na vaše ...
10 najboljih igara za igranje na Ubuntuu
Windows platforma bila je jedna od dominantnih platformi za igre zbog ogromnog postotka igara koje se danas razvijaju kako bi podržavale Windows. Može...