为什么我的python文件在IDLE中运行完美,但是当我双击它时它不起作用。让我重新说一下,即使他们在IDLE中正常工作,我的if / else语句似乎永远不会成立。
我甚至将我的所有代码分解为最简单的if / else语句来测试并确保我没有遗漏某些东西。这是我打破的代码。这是py文件中的确切代码,再次在IDLE中工作,但是当我双击py文件
时则不行choice = input('letter: ')
if choice == 'a':
print ('that is an a')
input('press any key to exit...')
else:
print('that letter is not an a')
input('press any key to exit')
btw python v3.2 Windows 7
答案 0 :(得分:3)
尝试添加
choice = choice.strip()
这对我有用
choice = input('letter: ')
choice = choice.strip()
if choice == 'a':
print ('that is an a')
input('press any key to exit...')
else:
print('that letter is not an a')
input('press any key to exit')
否则您的input
会将换文字和换行符一起提供给你if
失败
答案 1 :(得分:1)
input()可能会获得一个以行结尾的字符串。
尝试在输入后立即添加行print(repr(choice))
,以确切了解您正在使用的内容。