为什么我的程序使用扩展名为.py但扩展名为.pyw?

Nic*_*ick 5 python user-interface tkinter pythonw

我有一个脚本,可以使用Tkinter编写的简单GUI界面将Google Earth .kml/ .kmz文件转换为shapefile.

我的问题是它可以使用.py扩展程序正常工作,但是当使用.pyw扩展程序保存时它会在读取我的.kml文件时停止.

没有错误消息,它不会崩溃.GUI启动OK等,但它只是停止并始终在大约相同的位置.我正在使用Python 2.5,并且与Python 2.7具有相同的结果.

有什么想法会导致这种情况吗?

agf*_*agf 8

.pyw文件的运行方式与.py文件不同 - 它们与不同的解释器相关联,pythonw.exe而不是python.exe与之关联的控制台.

根据一些消息来源,包括这个旧的邮件列表线程,如果没有控制台,某些操作将无法运行.

没有看到确切的脚本,我们无法确切地知道导致问题的原因pythonw.

  • 我在过去遇到过这样的问题 - 它通常是一个输出管道填满,因为没有人可以从中读取.有些应用程序确实希望有一个控制台.如果他们继续将数据发送到标准输出或标准错误,最终管道会填满(因为没有消耗数据)并且进程阻塞等待管道中的某些空间可用. (2认同)