Курс Python → Модуль subprocess: запуск внешних команд

Модуль subprocess в Python предоставляет возможность выполнения внешних команд из программы на Python. Это может быть полезно, если вам нужно взаимодействовать с операционной системой или другими приложениями на уровне командной строки. Один из основных методов этого модуля — subprocess.run, который позволяет запускать команды и получать результаты их выполнения.

Для использования функции subprocess.run с опцией capture_output=True необходимо иметь версию Python 3.7 и выше. Это позволяет перехватывать вывод команды и получать его в виде байтов. Если вы хотите интерпретировать вывод как текст, вы можете добавить опцию text=True. Это упрощает работу с текстовыми данными, полученными от выполненной команды.

import subprocess

result = subprocess.run(["ls", "-l"], capture_output=True, text=True)
print(result.stdout)

Метод input в subprocess.run позволяет передать входные данные для выполнения команды. Например, если вам нужно передать данные в команду, которая их ожидает через стандартный ввод, вы можете использовать этот метод. Это особенно полезно при автоматизации задач, где вам нужно запускать команды с определенными входными данными.

Использование модуля subprocess требует осторожности, так как выполнение внешних команд может быть опасным из-за уязвимостей безопасности. Всегда проверяйте входные данные, которые вы передаете в команду, чтобы избежать возможных атак через командную строку. Также рекомендуется использовать абсолютные пути к исполняемым файлам, чтобы избежать проблем с поиском исполняемых файлов.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Метод join() с набором
  2. Python: библиотеки и функции
  3. Работа с файловой системой в Python
  4. Функция print() — вывод информации
  5. Логические значения в Python
  6. Функция с *args.
  7. Сохранение и загрузка модели в PyTorch
  8. Numpy: использование Ellipsis
  9. Кортеж в Python: создание и использование
  10. Создание графики с черепахой
  11. Замер времени выполнения кода
  12. Итерации в Python
  13. Настройка Cron
  14. Оператор «not» в Python
  15. Удаление элементов из списка
  16. Именование переменных в Python
  17. Закрытие файла в Python
  18. Капитализация строк
  19. Реверс строки в Python
  20. Функция map() в Python
  21. Создание итерируемых объектов
  22. Вычисление разности множеств в Python
  23. Создание списка через цикл
  24. Метод __irshift__ для Python
  25. Декоратор защиты анонимных пользователей
  26. Операторы присваивания в Python
  27. Тип данных TypeVarTuple
  28. Python Тесты и Гайды
  29. Метод join для наборов
  30. Форматирование данных с pprint
  31. Разделение строки на пары ключ-значение.
  32. Отображение графиков в Jupyter с Matplotlib
  33. Подсчет элементов с помощью Counter из collections
  34. Beautiful Soup — извлечение данных из HTML
  35. Определение объема памяти объекта
  36. Работа с рекламными данными в Pandas
  37. Пересечение списков с использованием множеств
  38. Добавление элемента в список.
  39. Область видимости переменных в Python
  40. Декораторы с @wraps
  41. Избегайте двойного подчеркивания
  42. Работа с itertools
  43. Операторы увеличения и уменьшения переменной
  44. Декораторы в Python

Marketello читают маркетологи из крутых компаний