博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python sys中的stdin,stdout,stderr
阅读量:7289 次
发布时间:2019-06-30

本文共 674 字,大约阅读时间需要 2 分钟。

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

  

  1. import sys  
  2. print 'Please enter your name:',  
  3. name=sys.stdin.readline()[:-1]  #输入等同于input
  4. print 'Hi,%s!' % name  

  内部逻辑实现-----重定向

  Python提供了一个StringIO模块来完成这个设想,比如:

  1. >>> from StringIO import StringIO  
  2. >>> import sys  
  3. >>> buf=StringIO()  
  4. >>> temp=sys.stdout #重定向前保存stdout  
  5. >>> sys.stdout=buf  #将stdout重定向到buff对象  
  6. >>> print 825,'python',0,666  # print会在要打印的信息后面加上一个硬回车  
  7. >>> sys.stdout=temp  #恢复stdout  
  8. >>> buf.getvalue() # print会在要打印的信息后面加上一个硬回车,因此最后有一个'\n'  
  9. '825 python 0 666\n'   

转载于:https://www.cnblogs.com/caozhi00/p/10065762.html

你可能感兴趣的文章
VirtualBox安装CentOS7
查看>>
Java豆瓣电影爬虫——抓取电影详情和电影短评数据
查看>>
如何让程序在后台执行
查看>>
bzoj3296[USACO2011 Open] Learning Languages*
查看>>
关于浮动元素对父元素高度的影响
查看>>
Mysql 关键字的优先级 分组 多表联查
查看>>
java 调用js
查看>>
iOS开发UI篇—Quartz2D使用(图形上下文栈)
查看>>
Oracle迁移MySQL笔记
查看>>
Building a Pub/Sub Message Bus with Wcf,Msmq,IIS
查看>>
Mybatis实现批量删除
查看>>
【leetcode】995. Minimum Number of K Consecutive Bit Flips
查看>>
【洛谷 P4886】 快递员 (点分治)
查看>>
在Ajax中将数组转换成字符串(0517-am)
查看>>
hive字符串函数
查看>>
【erlang ~ 4 days】 Day # 1.2 Sequential Programming
查看>>
HDFS Erasure Coding介绍
查看>>
abstract vs interface
查看>>
egret 游戏优化文档
查看>>
蚂蚁金服研发面经
查看>>