我有一个由3个文件和2个包组成的脚本。当我在IDLE或命令行中运行脚本时,它会完美地执行。我使用cx_freeze将程序转换为可执行文件,除了通过input()方法收到的文本评估错误之外,它仍然可以正常工作。这段代码反映了我自己:
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,我不知道为什么。我还在条件的每个分支中添加了print语句,并且为x打印的值是正确的,但它仍然评估为false。
答案 0 :(得分:0)
有时输入会在结尾处获得换行符。尝试剥离它:
x = input("Continue? ").strip()