python sys.stdin,sys.stdout,sys.stderr

  • Post author:
  • Post category:python


stdin , stdout ,以及stderr 变量 包含与标准I/O流 对应的流对象.

如果需要更好地控制输出,而print 不能满足我们的要求, 它们就是我们所需要的.

也可以替换它们, 这时候我们可以重定向输出和输入到其它设备( device ), 或者以非标准的方式处理它们

测试一下标准输出:

#testing stdout
>>> print 'Hello World!' #该语句会在标准输出的屏幕上打印 Hello World!
Hello World!
#等价于:
>>> import sys
>>> sys.stdout.write('Hello World!\n')
Hello World!

我们再测试一下标准输入:

#testing stdin
>>> print 'Hi,%s!' % raw_input('Please enter your name:')
Please enter your name:python
Hi,python!
>>> 

这就是从

标准输入:键盘

获取信息,再输出到

标准输出:屏幕


那么上面的例子中print 和 raw_input是如何与标准输入/输出流 建立关系的呢?

其实Python程序的标准输入/输出/出错流 定义在sys模块中,分别为: sys.stdin, sys.stdout, sys.stderr



版权声明:本文为sxingming原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。