python 管道已结束

您所在的位置:网站首页 pcb管道已结束 python 管道已结束

python 管道已结束

2024-07-16 16:26| 来源: 网络整理| 查看: 265

当管道来自“打开”(不知道正确的名称)文件时,我从标准输入或python中的管道读取问题。

我有例如 pipetest.py:

import sys

import time

k = 0

try:

for line in sys.stdin:

k = k + 1

print line

except KeyboardInterrupt:

sys.stdout.flush()

pass

print k

我运行了一段时间后会继续输出和Ctrl + c的程序

$ ping 127.0.0.1 | python pipetest.py

^C0

我没有输出。但是,如果我通过普通文件,它就可以工作。

$ ping 127.0.0.1 > testfile.txt

片刻之后,按Ctrl + c结束

$ cat testfile.txt | python pipetest.py

PING 127.0.0.1 (127.0.0.1) 56(84) bytes of data.

64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.017 ms

64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.015 ms

64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.014 ms

64 bytes from 127.0.0.1: icmp_seq=4 ttl=64 time=0.013 ms

64 bytes from 127.0.0.1: icmp_seq=5 ttl=64 time=0.012 ms

--- 127.0.0.1 ping statistics ---

5 packets transmitted, 5 received, 0% packet loss, time 3998ms

rtt min/avg/max/mdev = 0.012/0.014/0.017/0.003 ms

10

在程序结束之前如何获得任何输出(在这种情况下ping已结束)?



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3