如何 运行 带有 tkinter 按钮的 python 脚本?

How to run a python script with a tkinter button?

我有一个名为 main.py 的 python 文件,它看起来像这样:

print('hello world')

我还有一个 tkinkter_run.py 文件,如下所示:

import sys
import os
from tkinter import *
import main

window=Tk()

window.title("Running Python Script")
window.geometry('550x200')

def run():
    os.system('main.py')

btn = Button(window, text="Run your Code!", bg="blue", fg="white",command=run)
btn.grid(column=0, row=0)

window.mainloop()

当我 运行 我的 tkinker_run.py 文件时,我确实得到一个带有 Run your Code! 按钮的 window,但是当我单击该按钮并在 Visual 中查看我的终端时代码我收到以下错误:

Hello World
'main.py' is not recognized as an internal or external command,
operable program or batch file.

所以似乎 Hello World 在我点击 Run your Code! 按钮之前就已经打印出来了。我不明白问题是什么....

这是因为os.system只接受命令而不接受文件名。

您可以替换此代码

os.system("main.py")

像这样

os.system("python main.py")

我的目录名包含空格,大多数 shell 通过假设参数由空格分隔来拆分参数。所以解决方案是将包含脚本文件名的部分放在双引号之间。

os.system('python "c:\data\EK\Desktop\Python Microsoft Visual Studio\MM\main.py"')

成功了!