控制台输入未正确评估,使用CX_Freeze内置于EXE中的Python脚本
-
12-12-2019 - |
题
我有一个由3个文件和2个包组成的脚本。当我在空闲或通过命令行运行脚本时,它完全执行。我使用cx_freeze将程序转换为可执行文件,并且除了通过输入()方法收到的文本除了评估错误之外,它仍然正常工作。此代码镜像我自己的:
x = str(input("Continue? (y/n): "))
if x.lower() == "y" or x.lower() == "yes":
cont = True
else:
print("thanks for playing.")
cont = False
input("press enter key to exit...")
.
我将str()转换器添加到输入函数,以查看它是否有帮助,但它没有。 无论我是否键入“是”或“Y”,条件仍然会评估为False,而且我不知道为什么。我还向条件的每个分支添加了打印语句,并且打印x的值是正确的,但它仍然评估为false。
解决方案
有时输入到底获取换行符。尝试剥离它:
x = input("Continue? ").strip()
. 不隶属于 StackOverflow