Задать вопрос
@sortfact333

Как запустить функцию как subprocess?

Я хочу завершить часть кода так что бы остальной код продолжал работать.
def run():
    @eel.expose
    def end_browser():
        print("YES2")
        eel.end()
        eel.close()
        os._exit(0) 

    eel.init('web')
    eel.start("test.html", size=(700,700))
    

run()

import subprocess

process = subprocess.run([???], capture_output=True, shell=True)
print(process.returncode) # вернет 2 в случае ошибки

print("Continue code")


Мне посоветовали использовать subprocess но я не понимаю что нужно вставить в скобки что бы он начал работать.
Может ли кто объяснить это?
  • Вопрос задан
  • 430 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Python-разработчик: расширенный курс + нейросети
    12 месяцев
    Далее
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillbox
    Профессия Python-разработчик + ИИ
    10 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
yupiter7575
@yupiter7575
Python программист
eel.start() запускает цикл, который нельзя остановить через код. Даже если вы найдете способ, программа до этого участка кода не дойдет.
Ответ написан
Vindicar
@Vindicar
RTFM!
subprocess запускает команду, как будто ты её в терминале набрал.
Чтобы запустить в параллельном процессе функцию питон-кода, используй multiprocessing.
Если будешь пользоваться мультипроцессингом, заверни тело своей программы (т.е. непосредственно выполняемые команды, а не объявления функций или классов) в идиому
if __name__ == '__main__':
Иначе у тебя дочерние процессы будут пытаться запустить свои дочерние процессы, вместо того чтобы делать что велено.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
ITK academy Краснодар
от 220 000 до 300 000 ₽
ITK academy Краснодар
от 75 000 ₽
DimaTech Ltd Краснодар
от 140 000 до 140 000 ₽