Какво представлява модулът на операционната система на Python и как го използвате?

Какво представлява модулът на операционната система на Python и как го използвате?

Модулът за ОС в Python осигурява достъп до специфични за системата функции за работа с файловата система, процеси, планировчик и т.н. Трябва да овладеете системата на Python OS за писане на приложения, които се занимават с реални проблеми. Това ръководство обсъжда някои от основните концепции и илюстрира как да използвате системната команда на Python.





Характеристики на системата Python OS

Системата на ОС служи като преносим начин за взаимодействие с основната операционна система. Той предлага достъп до имена на файлове, аргументи на командния ред, променливи на средата, параметри на процеса и йерархия на файловата система, наред с други функционалности.





Този модул съдържа и два подмодула, модула os.sys и модула os.path. Можете да използвате функциите, предоставени от модула на ОС, за изпълнение на широк спектър от задачи. Някои често срещани употреби включват изпълнение на команди на обвивка, управление на файлове и директории, процеси на хвърляне на хайвера и т.н.





Първи стъпки с модула на операционната система

Най -лесният начин да проучите модула на ОС е чрез интерпретатора. Можете да импортирате модула там и да използвате системните функции, без да пишете изходен код. За това обаче трябва да имате инсталиран Python. Така че продължете и инсталирайте Python на вашата локална машина.

Свързани: Как да инсталирате Python на Ubuntu



Стартирайте преводача, като въведете python във вашия терминал или командна обвивка. След като е отворен, импортирайте модула на операционната система, като използвате следното изявление.

пускане на музика от телефона в колата
>>> import os

Вече можете да получите достъп до функционалностите, предоставени от модула на ОС, включително Python система команда. Например, можете да определите системната платформа с помощта на име команда. Примерът по -долу показва как се извикват системни команди, изложени от модула на ОС.





>>> os.name

Тази функция проверява дали присъстват определени модули, специфични за ОС, и определя платформата въз основа на това. Използвай непознат функция за получаване на подробна информация.

>>> os.uname()

Тази команда показва точната системна платформа заедно с архитектурата на машината, версията и версията. Използвай getcwd функция за извличане на текущата работна директория.





>>> os.getcwd()

Можете лесно да промените работната директория с помощта на системната команда Python chdir . Предайте новото местоположение като низов параметър.

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

The mkdir Функцията на модула за ОС прави създаването на нови директории лесно. Той също така ни позволява да създаваме рекурсивни папки, което означава, че Python ще създаде всички липсващи директории, които са родители на листовата директория.

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

Използвай rmdir команда за изтриване на директории от работната ви директория.

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

Примери за системна команда на Python

Системната команда, предоставена от модула на ОС, позволява на програмистите да изпълняват команди на обвивката. Не забравяйте да определите името на командата като низ. След като извикате python система команда, тя ще изпълни дадената команда в нова подчерка.

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

Можете да стартирате други самостоятелни приложения, като използвате същия метод. Следващият пример изпълнява редактора на терминали nano от вашата черупка на Python.

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

Системата на Python OS също извежда кода за връщане за всяка команда, която се изпълнява. Системите POSIX връщат 0 за успешно изпълнение и ненулеви стойности, за да посочат проблеми.

Можете да използвате операционната система в Python за изпълнение на всичко, което искате. Например, ако вашата програма трябва да прочете информацията за версията на програма на потребителската машина, можете да направите нещо подобно на следното.

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

Примерът по -долу изпълнява проста команда на черупка, която създава нов файл, наречен users.txt и го попълва с всички влезли потребители. Много програми на Python правят тези неща.

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

Предаваме името на командата на системата на ОС като низ. Можете да използвате всички видове полезни команди на терминала същия начин.

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

Можете също да използвате подпроцес призовава за изпълнение на системни команди от Python. Това осигурява няколко допълнителни предимства, включително по -бързо изпълнение, по -добро обработване на грешки, синтактичен анализ на изхода и команди на черупки. Официалната документация на Python също препоръчва повикване на подпроцес над по -стари модули като os.system и os.spawn .

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

Управление на файлове и директории чрез OS модул

Показахме как да създавате прости файлове и директории с помощта на модула на Python OS. Ами ако искате да създадете вложени папки? Системата на ОС също се грижи за това за нас, програмистите. Например, фрагментите по -долу създават папката $ HOME/test/root/api . Той също така ще създаде необходимите родителски директории, ако те не са налични.

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

Първо изтеглихме началната директория с помощта относно и след това се присъедини към имената на папките чрез os.path.join . Отчетът за печат показва името на папката и македири го създава.

Можем да прегледаме новата директория с помощта на listdir метод на модула на ОС.

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

Можете лесно да преименувате директорията api с помощта на преименувайте команда, предлагана от модула на ОС. По-долу изявлението преименува тази директория на API на test-api.

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

Използвай isfile и име функция на операционната система, ако вашата програма трябва да потвърди определени файлове или директории.

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

Модулът за ОС в Python също позволява на разработчиците да извличат имена на файлове и папки заедно с разширения на файлове. Фрагментите по -долу илюстрират използването на os.path.split и os.path.splitext в това отношение.

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

Използвайте кода по -долу, за да извлечете разширения като .txt или .mp3 от имената на файловете.

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

Различно използване на системата Python OS

Модулът на операционната система предлага много допълнителни функции за манипулиране на неща като потребителски процеси и планировчик на задания. Например, можете бързо да получите UID (потребителски идентификатор) на текущия процес, като използвате свидетел функция.

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

The станете твърди функция връща идентификатора на групата на стартиращия процес. Използвайте избухвам за получаване на PID (идентификатор на процеса) и getppid за да получите идентификатора на родителския процес.

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

Можете също да използвате модула на ОС за промяна на разрешенията на файлове и директории от вашата програма на Python. Използвай chmod функция на операционната система да направи това.

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

Тази команда променя разрешението на file1.txt да се 0444 . Използвайте 0o444 вместо 0444 за да се уверите, че изявлението е съвместимо между двете основни версии на Python.

Използвайте силата на Python OS System

Модулът за операционна система на Python предоставя всичко необходимо за взаимодействие с основната операционна система. Необходимо е ясно разбиране на операционната система за писане на наистина кросплатформени програми. Покрихме някои от основните функции, предоставени от този модул, за да ви помогнем да започнете. Изпробвайте ги със собственото си темпо и не забравяйте да се занимавате с тях.

Дял Дял Туит електронна поща Как да създавате и използвате кортежи в Python

Готови ли сте да изведете кодирането на Python на следващото ниво? Време е да разберете как да създавате и използвате кортежи.

Прочетете Напред
Свързани теми
  • Програмиране
  • Python
За автора Rubaiat Hossain(39 статии са публикувани)

Rubaiat е CS град със силна страст към отворен код. Освен че е ветеран на Unix, той се занимава и с мрежова сигурност, криптография и функционално програмиране. Той е запален колекционер на книги втора употреба и има безкрайно възхищение от класическия рок.

Още от Rubaiat Hossain

Абонирайте се за нашия бюлетин

Присъединете се към нашия бюлетин за технически съвети, рецензии, безплатни електронни книги и изключителни оферти!

Щракнете тук, за да се абонирате