cx_Freeze无法打印到控制台

时间:2016-07-15 20:48:45

标签: python python-3.x cx-freeze

我有一个应用程序在运行时向控制台输出一些内容。但作为一个独立的,可执行文件不会向控制台打印任何东西吗?

setup.py脚本如下所示:

import sys
from cx_Freeze import setup, Executable

setup(
    name = "My App",
    version = "1.0",
    options = {
        "build_exe" : {
            "include_files": ['MyImgs']
        },
    },
    executables = [Executable("Main.py", base = "Win32GUI")]
)

在命令行中,我运行以下命令:py setup.py build

然后我找到可执行文件并运行:Main.exe

由于某种原因我缺少的是任何print()陈述。我需要在设置脚本中包含一些内容吗?

1 个答案:

答案 0 :(得分:3)

如果使用“Win32GUI”基础,则Windows不提供stdout和stderr。您需要将自己重定向到其他位置(例如文件)。如果您使用“控制台”基础,则stdout和stderr可用,print()将按预期工作 - 但如果您尚未首先从控制台运行它,您将看到为您创建的控制台!