20200617 有关哨兵值在输入输出重定向里的问题
大家先看这个程序,其实很普通,就是一个利用哨兵机制来控制循环的python程序。今天重学第5章5.2.6中输入输出重定向里。有这样一个方法。就是调用存储有数据的TXT文件给程序来运行。
data = eval(input("Enter an integer (the input ends if it is 0): "))
sum = 0
while data != 0:
sum += data
data = eval(input("Enter an integer (the input ends if it is 0): "))
print("The sum is", sum)
比如我实现保存一个TXT文件input.txt
里面输入
1
2
34
4
5
6
6
1
2
总之很多吧。然后我就输出了。方法也很简单。
我是WIN7
就CMD
进入DOS模式
然后python 05-05.py < input.txt
结果出现了
所谓的EOFError: EOF when reading a line
我不解,因为在pycharm上运行很完美呀。我还修改了几次input.txt里的内容
但是故障依旧。后来我想起来了这个程序是为了演示哨兵值的呀。对呀。是不是结尾的地方。我没有填这个程序的哨兵值0?
我重新修改了input.txt里的结尾加一个0
再次运行,成功了。这个其实没什么,只是一次学习中的偶遇。但对我来说是第2次看一个不懂的章节里,得到的进步。非常感谢大家,谢谢阅读
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步