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 PythonbanKé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
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 HossainIratkozzon 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