Как выполнить команду python?
Вот такая команда в терминале запускает программу и выдаёт текст, ннадо повторить это из скрипта и забрать что выдёт, как правильно вызвать её из кода.
Ваш вопрос
Вот такая команда в терминале запускает программу и выдаёт текст, ннадо повторить это из скрипта и забрать что выдёт, как правильно вызвать её из кода.
Для внешней программы используйте модуль subprocess. Вызов result = subprocess.run(['программа', 'аргумент'], capture_output=True, text=True, check=True, timeout=30) дождётся завершения и вернёт объект результата. Путь к исполняемому файлу и каждый аргумент передавайте отдельным элементом списка. Не склеивайте пользовательский ввод в команду оболочки. Поле stdout содержит обычный вывод, stderr сообщения об ошибках. При check=True ненулевой код завершения вызовет CalledProcessError, а превышение времени ожидания приведёт к TimeoutExpired. Если запускаете ещё один Python скрипт тем же интерпретатором, используйте sys.executable первым элементом списка. Встроенные команды конкретной оболочки устроены иначе, поэтому точная форма вызова зависит от того, что именно вы запускаете из терминала.
Пока нет премиум-вопросов в подборке
Не нашли то, что искали?
Задайте свой вопрос
Лучший ответ
4o
4o
Как выполнить команду python?
Проверьте схему вызова:
• Импортируйте
subprocess. • Передайте программу и аргументы отдельными элементами списка. • Для получения вывода задайтеcapture_output=True, text=True. • Для ошибки при ненулевом коде завершения добавьтеcheck=True. • Ограничьте ожидание черезtimeout, если программа может зависнуть.Результат содержит
stdout,stderrиreturncode. Для обычного запуска исполняемого файла включать командную оболочку не требуется.