Функция для запуска другого скрипта Python

Я создаю программу с использованием Python/Tkinter, и она включает в себя главный экран с кучей кнопок. Каждая кнопка запускает другой скрипт Python в той же папке.

Я пытаюсь создать функцию, которая закрывает скрипт и открывает другой. Как это может быть сделано?

Люди рекомендовали os.system в других подобных темах, однако все, что я пробовал, не сработало.

Любые идеи/помощь будут очень признательны,

Джаррод


person Jarrod Jones    schedule 06.08.2015    source источник
comment
В чем ваши попытки потерпели неудачу? Можете ли вы привести пример того, что вы пробовали?   -  person lenz    schedule 07.08.2015
comment
os.system() должно работать. Как ваш основной скрипт вызывает это?   -  person martineau    schedule 07.08.2015
comment
Привет, @lenz и @martineau, я попытался импортировать os, а затем создать функцию с os.system("sudo python scriptname.py") , но кнопка ничего не делает при нажатии. Также попробовал только os.system("scriptname.py")   -  person Jarrod Jones    schedule 07.08.2015
comment
Вы пробовали os.system("python scriptname.py") или os.system("/usr/bin/env python scriptname.py")? Если да, то каким образом это не удалось?   -  person lenz    schedule 08.08.2015


Ответы (1)


Я бы подумал об использовании библиотеки подпроцессов в python.

import subprocess p=subprocess.Popen(["python", "my_script_1.py"], stdout=subprocess.PIPE, stderr=subprocess.STDOUT) output=p.communicate()[0]

Надеюсь это поможет.

person Phaneendra    schedule 06.08.2015