Python从标准输入stdin读取数据

时间:2022-05-28 16:40:19

Python有几种方法来读取标准输入的数据。

1、sys.stdin

sys.stdin提供了read()和readline()函数,如果想按一行行来读取,可以考虑使用它:

import sys
line = sys.stdin.readline()
while line:
    print line,
    line = sys.stdin.readline()

注意:如果没有数据,io会被堵塞,所以可以对标准输入做数据检查(Linux):

import sys
import select

if select.select([sys.stdin], [], [], 0.0)[0]:
    help_file_fragment = sys.stdin.read()
else:
    print("No data", file=sys.stderr)
    sys.exit(2)

2、input()

如果想使用交互的方式(提示输入),Python 3.x可以使用input(),而Python 2.x 使用raw_input():

x = raw_input('请输入您的名字:')