7
我们如何读取一个文件(非阻塞)到stdout并打印到标准输出(仍然非阻塞)?这是我能想到的最为神秘的方式,但它让你感觉必须有更好的方式。暴露某些LineReceiver的东西 - 比如逐行修改 - 功能将更加优选。读取文件,扭曲
from twisted.internet import stdio, protocol
from twisted.protocols.basic import FileSender
from twisted.internet import reactor
class FileReader(protocol.Protocol):
def connectionMade(self):
fl = open('myflie.txt', 'rb')
d = FileSender().beginFileTransfer(fl, self.transport)
d.addBoth(fl.close)
d.addBoth(lambda _: reactor.stop())
stdio.StandardIO(FileReader())
reactor.run()
我不知道在[扭曲](https://pypi.python.org/pypi/twisted)更好的方式 - 但这里是它是如何在[线路]完成(HTTPS://pypi.python .ORG /的PyPI /电路) - [cat.py](https://github.com/circuits/circuits/blob/master/examples/cat.py) –