我有一个tkinter按钮,我想用它在新的cmd窗口中运行现有的python脚本。我该怎么办? 我可以显示新的cmd窗口,但是如何在其中运行脚本?
谢谢, 克里斯。
答案 0 :(得分:0)
如果你编辑你的问题来添加它(允许,只是将其标记为已编辑并在评论中说明)而不是在评论中,则多行代码更具可读性。
from Tkinter import *
from sys import executable
from subprocess import Popen, CREATE_NEW_CONSOLE
import os
def delprof(): Popen(["cmd.exe"], creationflags=CREATE_NEW_CONSOLE) `
如果你得到一个带有提示的控制台,你可以运行python或做任何其他事情。要运行特定的python程序,以下内容适用于我(3.4)。
from tkinter import *
from subprocess import call
pyprog = 'tem2.py'
def callpy(): call(['python', '-i', pyprog] )
root = Tk()
Button(root, text='Run', command=callpy).pack()
root.mainloop()
运行程序时,控制台通常会在程序结束时消失。为了防止使用python程序,可以看到输出,或者像
那样input('hit enter to exit')
在程序结束时或以'-i'开头,就像我上面所做的那样。这也允许执行其他交互式语句来检查结果