OS modulis Python nodrošina piekļuvi sistēmai raksturīgām funkcijām, lai tiktu galā ar failu sistēmu, procesiem, plānotāju utt. Jums jāapgūst Python OS sistēma, lai rakstītu lietojumprogrammas, kas risina reālās pasaules problēmas. Šajā rokasgrāmatā ir apspriesti daži pamatjēdzieni un parādīts, kā izmantot komandu Python.

Python OS sistēmas iespējas

OS sistēma kalpo kā pārnēsājams mijiedarbības veids ar pamatā esošo operētājsistēmu. Tas piedāvā piekļuvi failu nosaukumiem, komandrindas argumentiem, vides mainīgajiem, procesa parametriem un failu sistēmas hierarhijai līdzās citām funkcijām.

Šis modulis satur arī divus apakšmoduļus, os.sys moduli un os.path moduli. OS moduļa sniegtās funkcijas varat izmantot plaša spektra uzdevumu veikšanai. Daži parastie lietojumi ietver čaulas komandu izpildi, failu un direktoriju pārvaldību, nārsta procesiutt.

Darba sākšana ar OS moduli

Vienkāršākais OS moduļa izpētes veids ir tulks. Jūs varat importēt moduli tur un izmantot sistēmas funkcijas, nerakstot avota kodu. Tomēr šim nolūkam ir jābūt instalētam Python. Tāpēc ejiet uz priekšu un instalējiet Python vietējā mašīnā.

instagram viewer

Saistīts: Kā instalēt Python uz Ubuntu

Sāciet tulku, ierakstot pitons savā terminālā vai komandu čaulā. Kad tas ir atvērts, importējiet OS moduli, izmantojot šo paziņojumu.

>>> importēt os

Tagad varat piekļūt OS moduļa nodrošinātajām funkcijām, ieskaitot Python sistēmā komandu. Piemēram, jūs varat noteikt sistēmas platformu, izmantojot nosaukums komandu. Zemāk sniegtajā piemērā parādīts, kā izsaukt sistēmas komandas, kuras iedarbina OS modulis.

>>> os.nosaukums

Šī funkcija pārbauda, ​​vai ir noteikti OS specifiski moduļi, un uz tā pamata nosaka platformu. Izmantojiet nosaukt funkciju, lai iegūtu detalizētu informāciju.

>>> os.uname ()

Šī komanda parāda precīzu sistēmas platformu līdzās informācijai par iekārtas arhitektūru, laidienu un versiju. Izmantojiet getcwd funkcija, lai izgūtu pašreizējo darba direktoriju.

>>> os.getcwd ()

Izmantojot Python sistēmas komandu, varat viegli mainīt darba direktoriju chdir. Ievadiet jauno atrašanās vietu kā virknes parametru.

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

The mkdir OS moduļa funkcija padara jaunu direktoriju izveidi vienkāršu. Tas arī ļauj mums izveidot rekursīvas mapes, tas nozīmē, ka Python izveidos visus trūkstošos direktorijus, kas ir vecāki lapu direktorijā.

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

Izmantojiet rmdir komandu, lai izdzēstu direktorijus no darba direktorija.

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

Python os moduļa pamati

Python sistēmas komandu piemēri

Sistēmas komanda, ko nodrošina OS modulis, ļauj programmētājiem izpildīt čaulas komandas. Noteikti definējiet komandas nosaukumu kā virkni. Kad esat piezvanījis pitonam sistēmā komandu, tā palaidīs norādīto komandu jaunā apakšshellā.

>>> cmd = 'datums'
>>> os.sistēma (cmd)

Izmantojot šo pašu metodi, varat palaist citas atsevišķas lietojumprogrammas. Šis piemērs izpilda termināļa redaktors nano no jūsu Python apvalka.

>>> cmd = 'nano'
>>> os.sistēma (cmd)

Python OS sistēma arī izvada katras izpildāmās komandas atgriešanās kodu. POSIX sistēmas atgriež 0 par veiksmīgu izpildi, un nulles vērtības norāda problēmas.

Jūs varat izmantot OS sistēmu Python, lai palaistu visu nepieciešamo. Piemēram, ja jūsu programmai lietotāja mašīnā ir jāizlasa programmas versija, varat rīkoties šādi.

>>> cmd = 'gcc --versija'
>>> os.sistēma (cmd)

Šis piemērs izpilda vienkāršu čaulas komandu, kas izveido jaunu failu ar nosaukumu users.txt un aizpilda to ar visiem pieteiktajiem lietotājiem. Šīs darbības veic daudzas Python programmas.

>>> os.system ('lietotāji> tests')

Komandas nosaukums tiek nodots OS sistēmai kā virkne. Jūs varat izmantot visu veidu noderīgas termināla komandas Tāpat.

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

Jūs varat arī izmantot apakšprocess aicina izpildīt sistēmas komandas no Python. Tas nodrošina vairākas papildu priekšrocības, tostarp ātrāku izpildlaiku, labāku kļūdu apstrādi, izvades parsēšanu un čaulas komandas. Python oficiālajā dokumentācijā ir ieteicams arī apakšprocesa izsaukums, izmantojot vecākus moduļus, piemēram, os.sistēma un os.pawn.

>>> importa apakšprocess
>>> subprocess.run (["ping", "- c 3", "example.com"])

Failu un direktoriju pārvaldība, izmantojot OS moduli

Mēs esam parādījuši, kā izveidot vienkāršus failus un direktorijus, izmantojot Python OS moduli. Ko darīt, ja vēlaties izveidot ligzdotas mapes? OS sistēma par to rūpējas arī mums, programmētājiem. Piemēram, tālāk sniegtie fragmenti izveido mapi $ HOME / test / root / api. Tas arī izveidos nepieciešamos vecāku direktorijus, ja tie nav pieejami.

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

Pirmkārt, mēs izguvām mājas direktoriju, izmantojot vide un pēc tam pievienoja mapju nosaukumus, izmantojot os.ceļš pievienoties. Drukas paziņojumā tiek parādīts mapes nosaukums un makedirs to rada.

Mēs varam apskatīt jauno direktoriju, izmantojot listdir OS moduļa metode.

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

Jūs varat viegli pārdēvēt api direktoriju, izmantojot pārdēvēt komandu, ko piedāvā OS modulis. Zemāk esošajā paziņojumā šis api direktorijs tiek pārdēvēts par test-api.

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

Izmantojiet isfile un isdir OS funkcija, ja jūsu programmai ir jāapstiprina konkrēti faili vai direktoriji.

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

OS modulis Python arī ļauj izstrādātājiem blakus failu paplašinājumiem iegūt failu un mapju nosaukumus. Tālāk sniegtie fragmenti ilustrē os.path.split un os.path.splitext šajā sakarā.

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

Izmantojiet šo kodu, lai no failu nosaukumiem izvilktu paplašinājumus, piemēram, .txt vai .mp3.

>>> faila nosaukums, paplašinājums = os.path.splitext (basename)
>>> drukāt (faila nosaukums)
>>> druka (paplašinājums)

Dažāda Python OS sistēmas izmantošana

OS modulis piedāvā daudzas papildu funkcijas, lai manipulētu ar tādām lietām kā lietotāja procesi un darba plānotājs. Piemēram, jūs varat ātri iegūt pašreizējā procesa UID (lietotāja ID), izmantojot getuid funkciju.

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

The getgid funkcija atgriež skriešanas procesa grupas ID. Izmantot getpid lai iegūtu PID (procesa ID) un getppid lai iegūtu vecāku procesa ID.

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

OS moduli var izmantot arī, lai mainītu Python programmas failu un direktoriju atļaujas. Izmantojiet chmod OS funkcija, lai to izdarītu.

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

Šī komanda maina lietotāja atļauju file1.txt uz 0444. Izmantot 0o444 tā vietā 0444 lai pārliecinātos, ka paziņojums ir saderīgs ar abām galvenajām Python versijām.

Izmantojiet Python OS sistēmas jaudu

Python OS modulis nodrošina visu nepieciešamo, lai mijiedarbotos ar pamatā esošo operētājsistēmu. Lai rakstītu patiesi starpplatformas programmas, ir nepieciešama skaidra OS sistēmas izpratne. Mēs esam iekļāvuši dažas no šī moduļa piedāvātajām pamatfunkcijām, lai palīdzētu jums sākt darbu. Izmēģiniet tos savā tempā un neaizmirstiet tos izdomāt.

E-pasts
Kā izveidot un izmantot korekcijas Python

Vai esat gatavs pārņemt savu Python kodu uz nākamo līmeni? Ir pienācis laiks saprast, kā izveidot un izmantot korekcijas.

Saistītās tēmas
  • Programmēšana
  • Python
Par autoru
Rubaiat Hossain (Publicēti 8 raksti)

Rubaiat ir CS grāds ar lielu aizraušanos ar atvērtā koda. Papildus tam, ka viņš ir Unix veterāns, viņš nodarbojas arī ar tīkla drošību, kriptogrāfiju un funkcionālu programmēšanu. Viņš ir dedzīgs lietotu grāmatu kolekcionārs un nebeidzami apbrīno klasisko roku.

Vairāk no Rubaiat Hossain

Abonējiet mūsu biļetenu

Pievienojieties mūsu informatīvajam izdevumam par tehniskiem padomiem, atsauksmēm, bezmaksas e-grāmatām un ekskluzīviem piedāvājumiem!

Vēl viens solis !!!

Lūdzu, apstipriniet savu e-pasta adresi e-pastā, kuru tikko nosūtījām.

.