Рубрики
Без рубрики

Команда Python System – OS.System (), SubProcess.Call ()

Команда Python System, система Python System (), функция вызова Secrocess Python Secrocess, команда Shell Python Execute, команды Shell Python Run

Автор оригинала: Pankaj Kumar.

В этом руководстве мы узнаем о команде Python System. Ранее мы узнали о случайном номере Python.

Команда Python System

Создавая программу в Python, вам может потребоваться упреждает некоторые команды оболочки для вашей программы. Например, если вы используете Пычарм IDE, вы можете заметить, что есть возможность поделиться вашим проектом на GitHub. И вы, вероятно, знаете, что передача файлов сделана Гит , который работает с использованием командной строки. Итак, Pycharm выполняет некоторые команды оболочки в фоновом режиме, чтобы сделать это.

Однако в этом руководстве мы узнаем некоторые основы о выполнении команд Shell из вашего кода Python.

Python OS.System () Функция

Мы можем выполнить систему команды, используя OS.System () функция. Согласно официальному документу, было сказано, что

Это реализуется путем вызова стандартной системы функции C () и имеет те же ограничения.

Однако, если команда генерирует любой выход, он отправляется в стандартный выходной поток интерпретатора. Использование этой команды не рекомендуется. В следующем коде мы постараемся узнать версию Git, используя системную команду Git --version Отказ

import os

cmd = "git --version"

returned_value = os.system(cmd)  # returns the exit code in unix
print('returned value:', returned_value)

Следующий вывод найден в Ubuntu 16.04, где GIT установлен уже.

git version 2.14.2
returned value: 0

Обратите внимание, что мы не печатаем вывод команды GIT версии для консоли, она печатается, потому что консоль – это стандартный выходной поток здесь.

Функция Python Subprocess.Call () Функция

В предыдущем разделе мы видели, что OS.System () Функция работает нормально. Но это не рекомендуется выполнить команды оболочки. Мы будем использовать Python подпрокат Модуль для выполнения системных команд.

Мы можем запустить команды Shell, используя SubProcess.Call () функция. См. Следующий код, который эквивалентен предыдущему коду.

import subprocess

cmd = "git --version"

returned_value = subprocess.call(cmd, shell=True)  # returns the exit code in unix
print('returned value:', returned_value)

И вывод будет же также.

Python Subprocess.Check_Output () Функция

До сих пор мы выполнили системные команды с помощью Python. Но мы не могли манипулировать выходом, произведенным этими командами. Использование subprocess.Check_Output () Функция Мы можем хранить вывод в переменной.

import subprocess

cmd = "date"

# returns output as byte string
returned_output = subprocess.check_output(cmd)

# using decode() function to convert byte string to string
print('Current date is:', returned_output.decode("utf-8"))

Он будет производить вывод, как следующее

Current date is: Thu Oct  5 16:31:41 IST 2017

Итак, в вышеупомянутых разделах мы обсудили об основных представлениях о выполнении команды Python System. Но нет предела в обучении. Если вы хотите, вы можете узнать больше о команде Python System, используя модуль подпроцесса из Официальная документация Отказ