Modul OS v Pythonu omogoča dostop do sistemsko specifičnih funkcij za delo z datotečnim sistemom, procesi, razporejevalnikom itd. Obvladati morate sistem OS Python za pisanje aplikacij, ki se ukvarjajo z resničnimi težavami. Ta priročnik obravnava nekatere osrednje koncepte in ponazarja, kako uporabljati sistemski ukaz Python.

Značilnosti sistema Python OS

Sistem OS služi kot prenosni način interakcije z osnovnim operacijskim sistemom. Ponuja dostop do imen datotek, argumentov ukazne vrstice, spremenljivk okolja, parametrov procesa in hierarhije datotečnega sistema, skupaj z drugimi funkcionalnostmi.

Ta modul vsebuje tudi dva podmodula, os.sys modul in os.path modul. Funkcije, ki jih ponuja modul OS, lahko uporabite za izvajanje številnih nalog. Nekatere pogoste uporabe vključujejo izvajanje ukazov lupine, upravljanje datotek in imenikov, drstitveni procesiitd.

Uvod v modul OS

Najlažji način raziskovanja modula OS je prek tolmača. Modul lahko tja uvozite in uporabljate sistemske funkcije brez pisanja izvorne kode. Za to pa morate imeti nameščen Python. Torej, nadaljujte in namestite Python na vaš lokalni računalnik.

instagram viewer

Sorodno: Kako namestiti Python na Ubuntu

Zaženite tolmač s tipkanjem python v terminalu ali ukazni lupini. Ko je odprt, uvozite modul OS z naslednjo izjavo.

>>> uvoz os

Zdaj lahko dostopate do funkcij, ki jih ponuja modul OS, vključno s Pythonom sistem ukaz. Sistemsko platformo lahko na primer določite s pomočjo ime ukaz. Spodnji primer prikazuje, kako priklicati sistemske ukaze, ki jih izpostavi modul OS.

>>> os.name

Ta funkcija preveri, ali so prisotni določeni moduli, specifični za OS, in na podlagi tega določi platformo. Uporabi uname funkcija za podrobne informacije.

>>> os.uname ()

Ta ukaz prikazuje natančno sistemsko platformo skupaj z informacijami o arhitekturi, izdaji in različici stroja. Uporabi getcwd funkcija za priklic trenutnega delovnega imenika.

>>> os.getcwd ()

Delovni imenik lahko enostavno spremenite s sistemskim ukazom Python chdir. Novo lokacijo posredujte kot parameter niza.

>>> os.chdir ('/ tmp')

The mkdir funkcija modula OS omogoča enostavno ustvarjanje novih imenikov. Omogoča nam tudi ustvarjanje rekurzivnih map, kar pomeni, da bo Python ustvaril vse manjkajoče imenike, ki so starši imenika listov.

>>> os.mkdir ('new-dir')

Uporabi rmdir ukaz za brisanje imenikov iz delovnega imenika.

>>> os.rmdir ('new-dir')

osnove modula python os

Primeri sistemskega ukaza Python

Sistemski ukaz, ki ga zagotavlja modul OS, programerjem omogoča izvajanje ukazov lupine. Ime ukaza določite kot niz. Ko pokličete python sistem ukaz, bo ukaz izvedel v novi podlupini.

>>> cmd = 'datum'
>>> os.sistem (cmd)

S to isto metodo lahko zaženete druge samostojne programe. Naslednji primer izvaja datoteko urejevalnik terminalov nano iz vaše lupine Python.

>>> cmd = 'nano'
>>> os.sistem (cmd)

Sistem OS Python izpiše tudi povratno kodo za vsak ukaz, ki se izvaja. Sistemi POSIX vrnejo 0 za uspešno izvajanje in ne-nič vrednosti, ki označujejo težave.

Sistem OS v Pythonu lahko uporabite za zagon vsega, kar želite. Če mora vaš program na primer prebrati informacije o različici programa na uporabniški napravi, lahko naredite nekaj takega.

>>> cmd = 'gcc --verzija'
>>> os.sistem (cmd)

Spodnji primer izvede preprost ukaz lupine, ki ustvari novo datoteko z imenom users.txt in ga zapolni z vsemi prijavljenimi uporabniki. Veliko programov Python to počne.

>>> os.system ('uporabniki> test')

Ime ukaza posredujemo sistemu OS kot niz. Uporabite lahko vse vrste uporabni terminalski ukazi na enak način.

>>> os.system ('ping -c 3 google.com')

Lahko tudi uporabite podproces poziva k izvrševanju sistemskih ukazov iz Pythona. To zagotavlja več dodatnih prednosti, vključno s hitrejšim izvajanjem, boljšim ravnanjem z napakami, razčlenjevanjem izhodov in ukazi lupine cevovoda. Uradna dokumentacija Pythona priporoča tudi klic podprocesa nad starejšimi moduli, kot je os.sistem in os.spawn.

>>> uvozi podproces
>>> podproces.run (["ping", "- c 3", "example.com"])

Upravljanje datotek in imenikov prek modula OS

Pokazali smo, kako ustvariti preproste datoteke in imenike z uporabo modula OS Python. Kaj če želite ustvariti ugnezdene mape? Za to poskrbi tudi sistem OS za nas programerje. Mapo na primer ustvarijo spodnji delčki $ HOME / test / root / api. Ustvaril bo tudi potrebne nadrejene imenike, če niso na voljo.

>>> ime_dir = os.path.join (os.environ ['HOME'], 'test', 'root', 'api')
>>> tiskanje (ime)
>>> os.makedirs (dirname)

Najprej smo domači imenik pridobili z uporabo okolju in nato pridružil imena map prek os.path.join. Stavek za tiskanje prikazuje ime mape in makedirji ga ustvarja.

Nov imenik si lahko ogledamo s pomočjo listdir metoda modula OS.

>>> os.chdir (os.path.join (os.environ ['HOME'], 'test', 'root', 'api'))
>>> os.system ('touch file1 file2 file3')
>>> os.listdir (os.environ ['DOMOV'])

Imenik api lahko enostavno preimenujete s pomočjo preimenuj ukaz, ki ga ponuja modul OS. Spodnja izjava preimenuje ta imenik api v test-api.

>>> os.rename ('api', 'test-api')

Uporabi isfile in isdir funkcijo OS, če mora vaš program preveriti določene datoteke ali imenike.

>>> os.path.isfile ('datoteka1')
>>> os.path.isdir ('datoteka1')

Modul OS v Pythonu razvijalcem omogoča tudi izvlečenje imen datotek in map skupaj s priponami datotek. Spodnji delčki ponazarjajo uporabo os.path.split in os.path.splitext v zvezi s tem.

>>> dir = os.path.join (os.environ ['HOME'], 'test', 'root', 'api', 'file1.txt')
>>> ime, osnovno ime = os.path.split (dir)
>>> tiskanje (ime)
>>> tiskanje (osnovno ime)

Uporabite spodnjo kodo, da iz imen datotek izvlečete pripone .txt ali .mp3.

>>> ime datoteke, končnica = os.path.splitext (osnovno ime)
>>> natisni (ime datoteke)
>>> tiskanje (razširitev)

Razna uporaba sistema Python OS

Modul OS ponuja številne dodatne funkcije za manipulacijo s stvarmi, kot so uporabniški procesi in razporejevalnik opravil. Na primer, lahko hitro dobite UID (ID uporabnika) trenutnega procesa s pomočjo getuid funkcijo.

>>> os.getuid ()
>>> os.getgid ()

The getgid funkcija vrne ID skupine tekočega procesa. Uporaba getpid za pridobitev PID (ID procesa) in getppid da dobim ID nadrejenega procesa.

>>> os.getpid ()
>>> os.getppid ()

Modul OS lahko uporabite tudi za spreminjanje dovoljenj datotek in imenikov iz vašega programa Python. Uporabi chmod funkcija OS, da to stori.

>>> os.chmod ('file1.txt', 0o444)

Ta ukaz spremeni dovoljenje za file1.txt do 0444. Uporaba 0o444 namesto 0444 da se prepričate, da je stavek združljiv v obeh glavnih različicah Pythona.

Izkoristite moč sistema Python OS

Pythonov OS modul ponuja vse, kar potrebujete za interakcijo z osnovnim operacijskim sistemom. Za pisanje resnično medplatformnih programov je potrebno jasno razumevanje sistema OS. Za lažji začetek smo obravnavali nekatere osnovne funkcije tega modula. Preizkusite jih v svojem tempu in ne pozabite se poigravati z njimi.

E-naslov
Kako ustvariti in uporabiti tuple v Pythonu

Ste pripravljeni svoje Python kodiranje dvigniti na naslednjo stopnjo? Čas je, da razumemo, kako ustvariti in uporabljati korice.

Sorodne teme
  • Programiranje
  • Python
O avtorju
Rubaiat Hossain (8 objavljenih člankov)

Rubaiat je študent CS z močno strastjo do odprtokodnih programov. Poleg tega, da je veteran Unixa, se ukvarja tudi z omrežno varnostjo, kriptografijo in funkcionalnim programiranjem. Je navdušen zbiralec rabljenih knjig in ima neskončno občudovanje klasičnega rocka.

Več od Rubaiat Hossain

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, preglede, brezplačne e-knjige in ekskluzivne ponudbe!

Še en korak…!

Potrdite svoj e-poštni naslov v e-poštnem sporočilu, ki smo vam ga pravkar poslali.

.