Mi a Python OS modulja és hogyan kell használni?

Mi a Python OS modulja és hogyan kell használni?

A Python operációs rendszer modulja hozzáférést biztosít a rendszer-specifikus funkciókhoz a fájlrendszer, folyamatok, ütemező stb. Kezeléséhez. El kell sajátítania a Python OS rendszert a valós problémákkal foglalkozó alkalmazások írásához. Ez az útmutató néhány alapvető fogalmat tárgyal, és bemutatja a Python rendszerparancs használatát.





A Python OS rendszer jellemzői

Az operációs rendszer hordozható módon kommunikál az alapul szolgáló operációs rendszerrel. Más funkciók mellett hozzáférést biztosít a fájlnevekhez, a parancssori argumentumokhoz, a környezeti változókhoz, a folyamatparaméterekhez és a fájlrendszer -hierarchiához.





Ez a modul két almodult is tartalmaz, az os.sys modult és az os.path modult. Az OS modul által biztosított funkciókat sokféle feladat elvégzésére használhatja. Néhány gyakori használat magában foglalja a shell parancsok végrehajtását, a fájlok és könyvtárak kezelését, az ívási folyamatokat stb.





Első lépések az OS modullal

Az OS modul felfedezésének legegyszerűbb módja a tolmács. A modult oda importálhatja, és a rendszerfunkciókat forráskód írása nélkül használhatja. Ehhez azonban telepítenie kell a Python programot. Tehát folytassa, és telepítse a Python -ot a helyi gépre.

Összefüggő: Hogyan telepítsük a Python -t az Ubuntu -ra



Indítsa el a tolmácsot gépeléssel piton a terminálban vagy a parancshéjban. Miután megnyitotta, importálja az operációs rendszert az alábbi utasítással.

i3 vs i5 vs i7 vs i9
>>> import os

Most elérheti az OS modul által biztosított funkciókat, beleértve a Python -ot rendszer parancs. Például meghatározhatja a rendszer platformját a név parancs. Az alábbi példa bemutatja, hogyan lehet meghívni az OS modul által nyilvánosságra hozott rendszerparancsokat.





>>> os.name

Ez a funkció ellenőrzi, hogy vannak -e bizonyos operációs rendszer -specifikus modulok, és ez alapján határozza meg a platformot. Használja a uname funkcióval részletes információkat kaphat.

>>> os.uname()

Ez a parancs megjeleníti a pontos rendszerplatformot a gép architektúrája, a kiadás és a verzióadatok mellett. Használja a getcwd funkcióval lekérheti az aktuális munkakönyvtárat.





>>> os.getcwd()

Könnyen megváltoztathatja a munkakönyvtárat a Python rendszerparancs segítségével chdir . Adja meg az új helyet karakterlánc -paraméterként.

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

Az mkdir Az OS modul funkciója egyszerűvé teszi az új könyvtárak létrehozását. Lehetővé teszi számunkra rekurzív mappák létrehozását is, vagyis a Python létrehozza az összes hiányzó könyvtárat, amelyek a levélkönyvtár szülei.

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

Használja a rmdir paranccsal törölheti a könyvtárakat a munkakönyvtárból.

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

Példák a Python rendszerparancsra

Az OS modul által biztosított rendszerparancs lehetővé teszi a programozók számára, hogy parancsokat hajtsanak végre. Ügyeljen arra, hogy a parancs nevét karakterláncként határozza meg. Ha egyszer hívja a pitont rendszer parancs, az adott parancsot új alhéjban futtatja.

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

Ugyanezzel a módszerrel más önálló alkalmazásokat is futtathat. A következő példa a nano terminálszerkesztőt futtatja a Python shell -ből.

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

A Python OS rendszer a végrehajtandó parancsok kimeneti kódját is kiadja. A POSIX rendszerek 0 értéket adnak vissza a sikeres végrehajtáshoz, és nem nulla értékek jelzik a problémákat.

A Python operációs rendszerét bármire használhatja. Például, ha a programjának el kell olvasnia a program verzióinformációit a felhasználói gépen, akkor tegye a következőket.

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

Az alábbi példa egy egyszerű shell parancsot hajt végre, amely új fájlt hoz létre users.txt és minden bejelentkezett felhasználóval kitölti. Sok Python program elvégzi ezeket a dolgokat.

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

A parancs nevét továbbítjuk az operációs rendszer számára karakterláncként. Használhat minden típusú hasznos terminálparancsok azonos módon.

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

Ön is használhatja alfolyamat rendszerparancsok végrehajtását kéri a Pythonból. Ez számos további előnnyel jár, beleértve a gyorsabb futási időt, a jobb hibakezelést, a kimeneti elemzést és a csőhéj -parancsokat. A Python hivatalos dokumentációja is javasolja az alfolyamat -hívást a régebbi modulok helyett os.system és os.spawn .

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

Fájlok és könyvtárak kezelése az OS modulon keresztül

Megmutattuk, hogyan lehet egyszerű fájlokat és könyvtárakat létrehozni a Python OS modul segítségével. Mi van, ha beágyazott mappákat szeretne létrehozni? Az operációs rendszer is gondoskodik erről nekünk, programozóknak. Például az alábbi töredékek hozzák létre a mappát $ HOME/test/root/api . Létrehozza a szükséges szülőkönyvtárakat is, ha nem érhetők el.

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

Először a saját könyvtárat használtuk a segítségével ról ről majd csatlakozott a mappanevekhez a os.path.join . A print utasítás megjeleníti a mappa nevét, és makedirs létrehozza azt.

Az új könyvtárat a listdir az OS modul módszere.

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

Az api könyvtárat egyszerűen átnevezheti a nevezd át parancsot, amelyet az OS modul kínál. Az alábbi utasítás átnevezi ezt az api könyvtárat test-api névre.

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

Használja a isfile és név az operációs rendszer funkciója, ha a programnak bizonyos fájlokat vagy könyvtárakat kell érvényesítenie.

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

A Python operációs rendszer modulja lehetővé teszi a fejlesztők számára a fájl- és mappanevek kibontását a fájlkiterjesztések mellett. Az alábbi részletek szemléltetik a használatát os.path.split és os.path.splitext ebben a tekintetben.

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

Használja az alábbi kódot a kiterjesztések, például .txt vagy .mp3 kibontásához a fájlnevekből.

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

A Python OS rendszer egyéb használata

Az OS modul számos további funkciót kínál a felhasználói folyamatok és a feladatütemező manipulálására. Például gyorsan lekérheti az aktuális folyamat UID -jét (felhasználói azonosítóját) a tanúja volt funkció.

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

Az getgid függvény a futó folyamat csoportazonosítóját adja vissza. Használat hülye a PID (folyamatazonosító) lekéréséhez és kapaszkodó hogy megkapja a szülő folyamat azonosítóját.

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

Az OS modult a fájlok és könyvtárak engedélyeinek módosítására is használhatja a Python programból. Használja a chmod az operációs rendszer funkcióját.

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

Ez a parancs megváltoztatja a file1.txt nak nek 0444 . Használat 0o444 ahelyett 0444 hogy a nyilatkozat kompatibilis legyen a Python mindkét fő verziójával.

Használja ki a Python OS rendszer erejét

A Python operációs rendszer modulja mindent megad, amire szüksége van az operációs rendszerrel való interakcióhoz. A valóban platformok közötti programok írásához szükség van az operációs rendszer világos megértésére. A kezdő lépésekhez áttekintettük a modul által biztosított alapvető funkciókat. Próbálja ki őket a saját tempójában, és ne felejtse el bánni velük.

Részvény Részvény Csipog Email Tuples létrehozása és használata Pythonban

Készen áll arra, hogy a Python -kódolást a következő szintre emelje? Itt az ideje, hogy megértsük, hogyan kell létrehozni és használni a sorokat.

Olvassa tovább
Kapcsolódó témák
  • Programozás
  • Piton
A szerzőről Rubaiat Hossain(39 cikk megjelent)

Rubaiat egy CS-diplomás, erős szenvedéllyel a nyílt forráskód iránt. Amellett, hogy Unix veterán, a hálózat biztonságával, a kriptográfiával és a funkcionális programozással is foglalkozik. Lelkes gyűjteménye a használt könyveknek, és végtelenül csodálja a klasszikus rockot.

Bővebben: Rubaiat Hossain

Iratkozzon fel hírlevelünkre

Csatlakozz hírlevelünkhöz, ahol technikai tippeket, értékeléseket, ingyenes e -könyveket és exkluzív ajánlatokat találsz!

Feliratkozáshoz kattintson ide