下面应该可以解你的惑了:

print >> sys.stdout的形式就是print的一种默认输出格式,等于print "%VALUE%"

看下面的代码的英文注释,是print的默认帮助信息

 1 # coding=utf-8
 2 import sys, os
 3
 4 list1Display = ['1', '2', '3']
 5 list2Display = ['abc', 'def', 'rfs']
 6 while list2Display != []:
 7     # Prints the values to a stream, or to sys.stdout by default.
 8     # Optional keyword arguments:
 9     # file: a file-like object (stream); defaults to the current sys.stdout.
10     # sep:  string inserted between values, default a space.
11     # end:  string appended after the last value, default a newline.
12     # print 可以将值输出到指定的输出流(可以是文件句柄),若不指定,
13     # 则输出到stdout(标准输出)
14     # 一般我们使用的时候不加输出定向符“>>”到输出的file对象,本代码中对象是stdout
15     # 下面的print在stdout对象中每次输出两个值
16     print >> sys.stdout, list2Display.pop(), list1Display.pop()
17 os.system( "pause" )

上 文中只演示了python2.x中的用法,2.x中的print无法指定end符号为其他值,默认会输出一个"\n",也就是用一次必定换到下一行,到了 3.x中print成为了一个真正意义上的函数,后来就可以任意指定end符号的值,你可以输出一次后末尾添加上任意你想要的值,而不是强制换行。

1 # coding=utf-8
2 import sys, os
3 import time
4 for i in range( 100 ):
5     time.sleep( .5 )
6     sys.stdout.write( "File transfer progress :[%3d] percent complete!\r" % i )
7     sys.stdout.flush()

因此在2.x中若想实现输出不换行,只能直接调用stdout对象的write方法了,下面也是一个实例,因为stdout没有end这个符号这一说,输出不会换行,因此如果你想同一样输出多次,在需要输出的字符串对象里面加上"\r",就可以回到行首了。

体会一下,将上面的"\r"拿掉试试看,是不是不换行而直接输出了?明白了么。很长一段时间内python都会停留在2.x的时代。

转载于:https://www.cnblogs.com/xingmeng/p/3679884.html

python 中sys.stdout.write 和 print sys.stdout的区别(转)相关推荐

  1. python的re2和re区别_浅谈Python中re.match()和re.search()的使用及区别

    1.re.match()fvk免费资源网 re.match()的概念是从头匹配一个符合规则的字符串,从起始位置开始匹配,匹配成功返回一个对象,未匹配成功返回None.fvk免费资源网 包含的参数如下: ...

  2. 【整理】Python中的re.search和re.findall之间的区别和联系 + re.finall中带命名的组,不带命名的组,非捕获的组,没有分组四种类型之间的区别

    之前自己曾被搞晕过很多次. 后来使用这些函数次数多了之后,终于比较清楚的弄懂了两者之间的区别和关系了. 尤其是一些细节方面的注意事项了. 在看下面的总结和代码之前,请先确保你对如下基本概念已经有所了解 ...

  3. python的input添加变量_在python中如何定义一个全局变量raw_input() 与 input()的区别...

    raw_input和input两个均是 python 的内建函数,通过读取控制台的输入与用户实现交互.但他们的功能不尽相同.下面举两个例子,来说明两者使用上的不同. 例子1Python 2.7.5 ( ...

  4. python中str函数isdigit、isdecimal、isnumeric的区别

    python中str函数isdigit.isdecimal.isnumeric的区别 num = "1"  #unicode num.isdigit()   # True num. ...

  5. python中items()和iteritems()的区别

    python中items()和iteritems()的区别 一.两个函数的作用 字典的items方法作用:是可以将字典中的所有项,以列表方式返回.因为字典是无序的,所以用items方法返回字典的所有项 ...

  6. python stdout.write_python 中sys.stdout.write 和 print sys.stdout的区别

    print >> sys.stdout的形式就是print的一种默认输出格式,等于print "%VALUE%" 看下面的代码的英文注释,是print的默认帮助信息 上 ...

  7. python中print()的作用是什么_在python中最常见的:print的真正用法

    一.print()函数概述 print() 方法用于打印输出,是python中最常见的一个函数. 该函数的语法如下: print(*objects, sep=' ', end='\n', file=s ...

  8. python中syntaxerror什么意思_在Python中,“SyntaxError:调用'print'时缺少括号”是什么意思?...

    此错误消息表示您尝试使用Python 3来关注示例或运行使用Python 2 print 语句的程序: 打印"你好,世界!" 上面的语句在Python 3中不起作用 . 在Pyth ...

  9. [转载] python中pprint模块详解——print()和pprint()两者的区别

    参考链接: pprint:Python中的数据漂亮打印方法pprint pprint的英文全称Data pretty printer,顾名思义就是让显示结果更漂亮. print()和pprint()都 ...

最新文章

  1. 了解这4个重点,带你探索未来将如何设计智能系统和机器人!
  2. 感觉没有学会什么真正的本领
  3. 第一方Cookie和第三方Cookie
  4. 自由自在公司冰淇淋甜美的健康文化
  5. 想服务器不宕机,你了解Linux“体检”指标吗?
  6. 网易2016年研发project师编程题(2)
  7. struts+hibernate+oracle+easyui实现lazyout组件的简单案例——OpSessionview实现
  8. 【远程沟通】“云答辩”“云招聘”双管齐下,解救“最难毕业生”
  9. oracle数据分布不均,oracle性能优化操作七:索引提高数据分布不均匀时查询效率...
  10. 软件工程(总体设计②设计原理)
  11. 测试开发系类之接口自动化测试
  12. 4G换5G关口,智能手机如何抢回“失去的一个月”
  13. SpringMVC写第一个程序HelloSpringMVC
  14. 深度学习工作笔记003---数据预处理:独热编码(One-Hot Encoding)
  15. 机器视觉工业光源知识总结
  16. 批量获取图片中的某个点的像素值
  17. 19-Spring Security资源服务器配置详解
  18. php新年倒计时源码,2020年-新年倒计时HTML源码
  19. document.getElementsByClassName的理想实现(@司徒正美 大神)
  20. 关于中小学编程教育的一些看法

热门文章

  1. mysqldump定时备份数据库
  2. Typescript-规范
  3. FTP的主动模式和被动模式,你应该用那种?
  4. jquery form 序列化
  5. Python学习第四天----Linux之用户与用户组权限
  6. 火狐访问HTTPS网站显示连接不安全的解决方法
  7. JavaScript大杂烩9 - 理解BOM
  8. Linux jogl配置
  9. Bitdefender 服务器版安装程序官方下载
  10. oracle job相关