Курс 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"
- Метод __ixor__ для побитового исключающего ИЛИ
- Метод pop() списка
- JMESPath в Python
- JSON в Python: модуль, dump, dumps, load
- Мощь вложенных функций в Python
- Добавление Progressbar в Python
- Создание и операции с дробями
- Проверка на истинность объектов в Python
- Метод __index__ в Python
- Оператор assert в Python
- Поиск частого элемента
- Пространство имен в Python
- Работа с getopt
- Декораторы в Python
- Модуль future Python
- Обход элементов в Python
- Работа с географическими данными.
- Декораторы для регистрации функций
- Метод rsub в Python: расширение функциональности вычитания
- Использование defaultdict в Python
- Получение списка файлов в директории с использованием os
- Поиск наиболее частого элемента
- Удаление дубликатов из списка с помощью dict.fromkeys
- Метод __int__ в Python
- Поток данных в Python
- Использование обратной косой черты в f-строках
- Работа с множествами в Python
- Работа с очередями в Python
- Извлечение статей с newspaper3k
- Извлечение новостей с newspaper3k
- Проблемы с dict в Python
- Оператор обр. импликации
- Получение списка кортежей из словаря
- Форматирование строк в Python
- Отправка POST-запроса в REST API
- Импорт модуля из другого каталога
- Блок else в Python
- Передача неизвестных аргументов в Python.
- Нахождение разницы между списками в Python
- Декораторы в Python
- Работа с модулем random
- Перезапуск ячейки в Jupyter Notebook с dostoevsky
- Библиотека wikipedia для Python
- Управление IP-адресами через прокси
- Фильтрация элементов с помощью islice
- Удаление falsy-значений из списка с помощью filter















