Windows 7 Python 3:为什么输入y时,[';y';,';y';]中的input()结果为false?

Windows 7 Python 3:为什么输入y时,[';y';,';y';]中的input()结果为false?,windows-7,input,python-3.2,Windows 7,Input,Python 3.2,我对Python非常陌生。我在一个文件中编写了以下脚本: # ...\temp\test.py x = (input() in ['y', 'Y']) print(x) 并在命令行中运行它: python test.py y False 据我所知,打印的结果应该是真实的。但实际结果是错误的。为什么会这样 我的环境: 操作系统:win7 Python:3.2它在Ubuntu中运行良好。我能想到的唯一一件事就是窗户会粘在额外的空白处。试试这个: x = (input().strip() in

我对Python非常陌生。我在一个文件中编写了以下脚本:

# ...\temp\test.py
x = (input() in ['y', 'Y'])
print(x)
并在命令行中运行它:

python test.py

y

False
据我所知,打印的结果应该是真实的。但实际结果是错误的。为什么会这样

我的环境: 操作系统:win7
Python:3.2

它在Ubuntu中运行良好。我能想到的唯一一件事就是窗户会粘在额外的空白处。试试这个:

x = (input().strip() in ['y', 'Y'])
如果这不起作用,请执行以下操作:

y = input()
x = (y in ['y', 'Y'])
print(y)
print(x)

然后,您将能够看到input()实际返回的内容。

它在Win7上使用脚本“x=(input().strip()在['y','y'])”运行。它可以很好地处理所有脚本,包括您和我在XP上的脚本。似乎这是操作系统环境相关的问题。非常感谢您的回复。@Kurtishao:您是否检查了第二段代码中“y”中实际存储的内容?你能告诉我是什么吗?我在互联网上搜索了几天,在我的win7机器上试了几个小时,但仍然找不到答案。我会继续调查,并会让你知道什么时候得到它(希望我能得到它)。如果你得到答案,请与我分享。谢谢。这是3.2上的一个bug,已经在3.3上修复了。今天,我在我的win7机器上重新安装了3.3,它现在可以工作了。谢谢你的帮助。