Mis on Pythoni OS -moodul ja kuidas seda kasutada?

Mis on Pythoni OS -moodul ja kuidas seda kasutada?

Pythoni OS-moodul pakub juurdepääsu süsteemispetsiifilistele funktsioonidele failisüsteemi, protsesside, ajaplaneerija jms käsitlemiseks. Peate valdama Python OS-i süsteemi rakenduste kirjutamiseks, mis tegelevad reaalsete probleemidega. See juhend käsitleb mõningaid põhikontseptsioone ja illustreerib Pythoni süsteemi käsu kasutamist.





Python OS süsteemi omadused

OS -süsteem on kaasaskantav viis aluseks oleva operatsioonisüsteemiga suhtlemiseks. Lisaks muudele funktsioonidele pakub see juurdepääsu failinimedele, käsurea argumentidele, keskkonnamuutujatele, protsessiparameetritele ja failisüsteemi hierarhiale.





See moodul sisaldab ka kahte alammoodulit, os.sys moodulit ja os.path moodulit. OS -mooduli pakutavaid funktsioone saate kasutada mitmesuguste ülesannete täitmiseks. Mõned tavalised kasutusalad hõlmavad shellikäskude täitmist, failide ja kataloogide haldamist, kudemisprotsesse jne.





Alustamine OS -mooduliga

Lihtsaim viis OS -mooduli uurimiseks on tõlk. Saate mooduli sinna importida ja süsteemi funktsioone kasutada ilma lähtekoodi kirjutamata. Sellegipoolest peab teil olema Python installitud. Nii et jätkake ja installige Python oma kohalikku masinasse.

Seotud: Kuidas Pythoni Ubuntu installida



Käivitage tõlk tippides python oma terminalis või käsu kestas. Kui see on avatud, importige OS -moodul, kasutades järgmist avaldust.

fire hd 10 google play 2018
>>> import os

Nüüd pääsete juurde OS -mooduli pakutavatele funktsioonidele, sealhulgas Pythonile süsteem käsk. Näiteks saate süsteemi platvormi määrata, kasutades nimi käsk. Allolev näide näitab, kuidas käivitada OS -mooduli paljastatud süsteemikäsklusi.





>>> os.name

See funktsioon kontrollib teatud OS -i spetsiifiliste moodulite olemasolu ja määrab selle põhjal platvormi. Kasuta uname funktsioon, et saada üksikasjalikku teavet.

>>> os.uname()

See käsk kuvab masina arhitektuuri, väljalaske ja versiooniteabe kõrval täpse süsteemiplatvormi. Kasuta getcwd funktsioon praeguse töökataloogi allalaadimiseks.





>>> os.getcwd()

Töökataloogi saate hõlpsalt muuta, kasutades Pythoni süsteemi käsku chdir . Edastage uus asukoht stringiparameetrina.

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

The mkdir OS -mooduli funktsioon muudab uute kataloogide loomise lihtsaks. See võimaldab meil luua ka rekursiivseid kaustu, mis tähendab, et Python loob lehekataloogi kõik puuduvad kataloogid.

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

Kasuta rmdir käsk kataloogide kustutamiseks oma töökataloogist.

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

Pythoni süsteemi käsu näited

OS -mooduli pakutav süsteemikäsk võimaldab programmeerijatel kesta käske täita. Kindlasti määrake käsu nimi stringina. Kui helistate püütonile süsteem käsk, käivitab see antud käsu uues alamkarbis.

>>> cmd = 'date'
>>> os.system(cmd)

Sama meetodit kasutades saate käivitada ka teisi eraldiseisvaid rakendusi. Järgmine näide käivitab terminali redaktori nano teie Pythoni kestast.

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

Python OS süsteem väljastab ka iga käivitatava käsu tagastuskoodi. POSIX -süsteemid tagastavad eduka täitmise korral 0 ja probleemide näitamiseks nullist erinevad väärtused.

Pythonis saate kasutada OS -i süsteemi, et käivitada kõike, mida soovite. Näiteks kui teie programm peab lugema kasutajaversioonil programmi versiooniteavet, võite teha midagi järgmist.

>>> cmd = 'gcc --version'
>>> os.system(cmd)

Allolev näide käivitab lihtsa kesta käsu, mis loob uue faili nimega users.txt ja täidab selle kõigi sisse logitud kasutajatega. Paljud Pythoni programmid teevad seda.

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

Edastame käsu nime OS -süsteemina stringina. Võite kasutada igat tüüpi kasulikud terminali käsud samamoodi.

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

Võite kasutada ka alamprotsess nõuab Pythonilt süsteemi käskude täitmist. See pakub mitmeid lisahüvesid, sealhulgas kiiremat käitusaega, paremat veakäsitlust, väljundi sõelumist ja torujuhtme käsklusi. Pythoni ametlik dokumentatsioon soovitab ka alamprotsessi kutsumist vanemate moodulite, näiteks os.süsteem ja os.spawn .

>>> import subprocess
>>> subprocess.run(['ping','-c 3', 'example.com'])

Failide ja kataloogide haldamine OS -mooduli kaudu

Oleme näidanud, kuidas luua lihtsaid faile ja katalooge Python OS mooduli abil. Mis siis, kui soovite luua pesastatud kaustu? OS -süsteem hoolitseb selle eest ka meie, programmeerijate eest. Näiteks loovad kausta allolevad katkendid $ HOME/test/root/api . Samuti loob see vajalikud vanemkataloogid, kui need pole saadaval.

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

Esiteks hankisime kodukataloogi kasutades umbes ja seejärel liitusid kausta nimedega os.path.join . Prinditeade kuvab kausta nime ja makedirid loob selle.

Uut kataloogi saame vaadata, kasutades listdir OS -mooduli meetod.

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

Api kataloogi saate hõlpsalt ümber nimetada, kasutades ümber nimetada OS -mooduli pakutav käsk. Allolev avaldus nimetab selle api kataloogi ümber test-api-ks.

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

Kasuta isfile ja nimi operatsioonisüsteemi funktsiooni, kui teie programm peab kinnitama konkreetseid faile või katalooge.

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

Pythoni OS -moodul võimaldab arendajatel faililaiendite kõrval ka failide ja kaustade nimesid välja võtta. Allolevad katkendid illustreerivad selle kasutamist os.path.split ja os.path.splitext selles osas.

>>> dir = os.path.join(os.environ['HOME'], 'test', 'root', 'api', 'file1.txt')
>>> dirname, basename = os.path.split(dir)
>>> print(dirname)
>>> print(basename)

Kasutage allolevat koodi, et eraldada failinimedest laiendid, näiteks .txt või .mp3.

>>> filename, extension = os.path.splitext(basename)
>>> print(filename)
>>> print(extension)

Python OS -i muu kasutamine

OS -moodul pakub palju lisafunktsioone selliste asjade manipuleerimiseks nagu kasutajaprotsessid ja tööde planeerija. Näiteks saate kiiresti saada praeguse protsessi UID (kasutaja ID), kasutades tunnistajaks funktsiooni.

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

The getgid funktsioon tagastab töötava protsessi rühma ID. Kasutamine loll PID (protsessi id) ja äge emaprotsessi ID saamiseks.

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

OS -moodulit saate kasutada ka Pythoni programmi failide ja kataloogide lubade muutmiseks. Kasuta chmod OS -i funktsioon seda teha.

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

See käsk muudab luba fail1.txt et 0444 . Kasutamine 0o444 selle asemel 0444 veendumaks, et avaldus ühildub Pythoni mõlema peamise versiooniga.

Kasutage Python OS -i süsteemi võimsust

Pythoni OS -moodul pakub kõike, mida vajate selle aluseks oleva operatsioonisüsteemiga suhtlemiseks. Tõeliselt platvormidevaheliste programmide kirjutamiseks on vaja operatsioonisüsteemi selget arusaamist. Alustamiseks oleme käsitlenud mõningaid selle mooduli põhifunktsioone. Proovige neid omas tempos ja ärge unustage nendega nokitseda.

Jaga Jaga Piiksuma E -post Kuidas luua ja kasutada Tuples Pythonis

Kas olete valmis oma Pythoni kodeerimise järgmisele tasemele viima? On aeg aru saada, kuidas luua ja kasutada tuppe.

Loe edasi
Seotud teemad
  • Programmeerimine
  • Python
Autori kohta Rubaiat Hossain(39 artiklit avaldatud)

Rubaiat on CS grad, kellel on suur kirg avatud lähtekoodiga. Lisaks Unixi veteranile tegeleb ta ka võrgu turvalisuse, krüptograafia ja funktsionaalse programmeerimisega. Ta on kirglik kasutatud raamatute koguja ja imetleb klassikalist rokki lõputult.

Rohkem Rubaiat Hossainilt

Telli meie uudiskiri

Liituge meie uudiskirjaga, et saada tehnilisi näpunäiteid, ülevaateid, tasuta e -raamatuid ja eksklusiivseid pakkumisi!

Tellimiseks klõpsake siin