脚本在转换为 Win 可执行文件后不产生任何输出

Script doesn't produce any output after being converted to Win executable

我有一个 python (3.6) 脚本使用 print() 命令打印输出:

print(convert_size(logsize))

然后我使用 cx_Freeze 5.0.1 将脚本转换为 .exe。当它确实从 IDLE 工作并打印输出时,双击启动 .exe 文件,或以管理员身份,或以管理员身份从 cmd 执行它根本不会产生任何输出:http://prnt.sc/emz5m4

我尝试在脚本末尾添加 input() 然后将文件重新编译为 .exe,它应该 "stop" window 关闭但它仍然关闭。

您是仅在编译此脚本时发生这种情况,还是在编译其他脚本时也发生这种情况?

如果您无法使用 cx_Freeze 将输出输出到控制台,也许您可​​以尝试使用 pyinstaller 进行编译。具体来说,选项“--console”或“--noconsole”可让您控制是否打开控制台以查看输出。它对我来说效果很好。

https://pythonhosted.org/PyInstaller/usage.html

看来 pyinstaller 是从 3.6 位置启动的,因为我为 2.7 和 3.6 安装了它。指向正确的位置 (C:\Python27\Scripts) 后,脚本已成功编译!