gpt4 book ai didi

Python 3.2.2 IF 在 IDLE 中运行与从桌面运行时的行为不同

转载 作者:太空宇宙 更新时间:2023-11-03 14:31:03 24 4
gpt4 key购买 nike

美好的一天!

今天我用 Python 3.2.2 写了一个小脚本,这段简单的代码决定给我找麻烦。

def main():
yn = ""
#...
while True:
#...
yn = input( "---> " )
if yn.lower() != "y":
break

现在,这段代码的作用应该很明显了,但是当我在 IDLE 中运行它时Windows 7 它工作得很好,或者当我双击脚本的图标时在我的桌面上打开它,无论天气与否,我输入“y”它都会关闭,当然这是一个简单的解决方法写作:

if yn.lower() == "n":
#...

这就是我所做的,但是我想知道这可能是什么原因?

最佳答案

您确定您使用的是 3.2.2 而不是 3.2.0 吗?

Windows 上的 Python 3.2.0 中存在一个错误,从标准输入读取有时会在字符串末尾留下 \r,这可以解释您所看到的内容。使用 yn.strip().lower() 解决错误或更新到当前版本 (3.2.3)。

具体问题描述为http://bugs.python.org/issue11272 ,但如果您使用的是 3.2.2,它应该已经修复。

关于Python 3.2.2 IF 在 IDLE 中运行与从桌面运行时的行为不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10776254/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com