我编写了一个在命令提示符下运行良好的脚本,但是如果我双击桌面上的script.py图标,它只会显示最后一行。
脚本中的函数运行完美,但一旦找到匹配,就应该在屏幕上显示输出。最后,我有一个os.pause语句,并在脚本完成时显示,但屏幕上没有显示任何其他内容。
我正在使用pythonw.exe执行它。我还应该检查什么?
谢谢。
答案 0 :(得分:2)
pythonw压缩了执行python脚本时创建的控制台窗口。它适用于打开自己的GUI的程序。没有pythonw,python gui应用程序会有它的常规窗口和一个额外的控制台浮动。我不确定pythonw对你的stdout做了什么,但是os.isatty()返回False,我认为stdout / err只是被遗忘了。如果运行像os.system("pause")
这样的DOS命令,Windows仅为该命令创建一个新的控制台窗口。这就是你在屏幕上看到的内容。
如果你想看到你的脚本输出,你应该运行python.exe并在@GaryWalker建议的脚本末尾添加输入提示,或使用像tcl / tk,Qt或wxPython这样的gui工具包
答案 1 :(得分:1)
我使用过像以前一样的脚本,对我来说似乎没问题
print("Hello world")
input("Press return to exit")