shwq.net
当前位置:首页 >> Python的一个简单问题:For linE in sys.stDin: >>

Python的一个简单问题:For linE in sys.stDin:

这样就行了: import sys while True: line = sys.stdin.readline() # 一次只读一行 if not line: # 如果是空行(^Z)就停止 break a = line.split() print int(a[0]) + int(a[1]) # 否则回显,再回去读下一行

import sys class LineBuffer: def __init__(self, buffsize=10): self.buffer = [] self.buffsize=buffsize def flush(self): output, self.buffer = self.buffer, [] return output def append(self, line): self.buffer.append(line) if self...

用特殊字符吧 if line.strip()=="$$"

因为命令里用了管道符号,这就会把python的stdin定义为了less的stdout。因此python不能再读取键盘输入。 建议把txt文件名作为命令行参数传入python,让python自己去读取文件。这样python的stdin就还是指向键盘输入。命令如下: $ python 1.py te...

read读取数据 ctrl+d是结束输入 ,read并不会像input那样遇到回车就返回读取的数据 它会缓存或者 等到ctrl d再读取数据

解决方案: select,poll等监视标准输入文件句柄(0),一旦有I/O操作就打印数据 使用sys.stdin.isatty()函数 import sys def check_method_1(): import select if select.select([sys.stdin, ], [], [], 0.0)[0]: print "Have data!" for line in s...

除了最后一行改下: print '\t'.join((user, item, rating, timestamp)) 其他没有问题啊

read读取数据 ctrl+d是结束输入 ,read并不会像input那样遇到回车就返回读取的数据 它会缓存或者 等到ctrl d再读取数据

>>> dir(sys.stdin) ['_CHUNK_SIZE', '__class__', '__delattr__', '__doc__', '__enter__', '__eq__', ' _exit__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__ nit__', '__iter__', '__le__', '__lt__', '__ne__'...

在unix/linux操作系统的世界里,一切都是文件,包括stdin/stdout/stderr. 你可以先设想在loadDbase里没有import sys,sys.stdin=dbfile这两句,那么loadDbase就是从终端(命令行/控制台)输入数据; 在给出这两句之后,应用就把dbfile(那个已经打开...

网站首页 | 网站地图
All rights reserved Powered by www.shwq.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com