这是我的代码:
print "Note: Your file is available now."
viewYourFile = raw_input("\nDo you wish to view this file now? ")
if viewYourFile == 'Y' or 'y':
fo = open('messages.txt', 'r+')
#Read whole file into data
data = fo.read()
print data
# Close the file
fo.close()
elif viewYourFile == 'N' or 'n':
print "Thank you!"
else:
print "Didn't recognize user input"
当我输入'n'时,文本文件仍然打开。如果用户输入“N”或“N”,我希望脚本继续运行,而不将文本打印到终端。在
我看不出我做错了什么明显的事。有人能帮我再看一眼吗?非常感谢。在
if viewYourFile == 'Y' or 'y':
始终计算为True
,因为第二个条件'y'
总是True
。在请改用
if viewYourFile in ('Y', 'y'):
。在另外,不要手动关闭文件,而是使用
^{pr2}$with
上下文管理器。以下是生成的代码:另请参见:
我认为越聪明,就有一个寄存器:
您应该:
或者像@alecxe建议的那样,即:
^{pr2}$另一个减少打字的好方法是:
相关问题 更多 >
编程相关推荐