脚本在IDLE中工作,但.py文件不起作用

wja*_*obw 8 python tkinter windows-explorer python-idle

我有一个tkinter脚本,在IDLE中运行得很好.但是,当我从Windows资源管理器中双击.py文件时,控制台窗口闪烁半秒然后退出.

我能够在控制台窗口上进行丝网印刷.它说:

...etc.etc...
NameError: global name 'simpledialog' is not defined
Run Code Online (Sandbox Code Playgroud)

simpledialogtkinter我在我的脚本中使用的模块.像我一样from tkinter import *,没有必要明确写tkinter.simpledialog.

它在IDLE中工作,为什么不用.py?

Rog*_*ger 6

IDLE使用Tkinter作为其图形环境.您的代码可能依赖于IDLE本身导入的副作用.如果您在没有子进程的情况下使用IDLE,则尤其如此.

使用时simpledialog模块不导入from tkinter import *.尝试将此添加到您的代码中:

import tkinter.simpledialog as simpledialog
Run Code Online (Sandbox Code Playgroud)


小智 0

您是否更新了 PATH 环境变量以便找到您的 Python 可执行文件?您可以在此处找到有关如何操作的更多信息 -在 Windows 上使用 Python

但您基本上需要确保在提示符下键入以下命令时显示包含 python.exe 的文件夹(例如 C:\Python32):

echo %PATH%
Run Code Online (Sandbox Code Playgroud)