print() 应该是初学者最先接触到的第一个 Python 函数,因为几乎所有的启蒙课程都是从 print(‘Hello world’) 开始的。事实上, print() 也是程序员使用频率最高的函数之一,同时也是很多程序员喜欢的代码调试利器。但是关于 print() 函数,你真的了解吗?

1. 打字机效果

不了解 print() 的 flush 参数,很难实现下图所示的打字机效果:
print() 像个调皮的小朋友,你让他帮你打印,他一定会做,但未必是立即去做,也许会攒够了多个打印任务才执行一次。设置 flush=True,可以让这位小朋友立刻去执行命令。

# -*- coding: utf-8 -*-import timedef printer(text, delay=0.2):"""打字机效果"""for ch in text:print(ch, end='', flush=True)time.sleep(delay)printer('玄铁重剑,是金庸小说笔下第一神剑,持之则无敌于天下。')

2. 旋转式进度指示
Linux 系统文本界面下,最常用的进度指示是用横竖斜杠构成的旋转图案。

Python也可以轻松实现这个效果,秘诀就在于 ‘\b’ 字符。 ‘\b’ 相当于键盘上的退格键,可以让我们把刚刚打印过的最后一个字符擦掉重新打印。这个效果,同样需要设置参数 flush 为真。

# -*- coding: utf-8 -*-
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
import timedef waiting(cycle=20, delay=0.1):
"""旋转式进度指示"""
for i in range(cycle):
for ch in ['-', '\\', '|', '/']:
print('\b%s'%ch, end='', flush=True)
time.sleep(delay)waiting()

反转字符顺序,就可以改变旋转方向。将第一个字符 ‘-’ 改成 '-- ',还可以实现这样的效果:

3. 覆盖式打印效果

‘\b’ 的作用是回退一个字符,’\r’ 则可以退回到行首。借助于 ‘\r’,可以实现整行覆盖式的打印效果:

需要注意的是,整行覆盖的话,新的字符串长度不能小于原字符串长度,否则会留下前一次的打印内容。这个效果,同样需要设置参数 flush 为真。

# -*- coding: utf-8 -*-import timedef cover(cycle=100, delay=0.2):
"""覆盖式打印效果"""for i in range(cycle):
s = '\r%d'%i
print(s.ljust(3), end='', flush=True)
time.sleep(delay)cover()

用 python print() 函数实现的三个特效相关推荐

  1. Python小技巧:用 print() 函数实现的三个特效

    print() 应该是初学者最先接触到的第一个 Python 函数,因为几乎所有的启蒙课程都是从 print('Hello world') 开始的.事实上, print() 也是程序员使用频率最高的函 ...

  2. Python print 函数- Python零基础入门教程

    目录 一.Python print 函数简介 二.Python print 函数语法 三.Python print 函数使用 1.objects 参数 2.sep 参数 3.end 参数 4.flus ...

  3. Python print函数及format()格式化输出详解

    今天继续给大家介绍Python相关知识,本文主要内容是Python print函数及format()格式化输出详解. 一.print()函数基本使用 print()函数是Python中用于向控制台输出 ...

  4. Python·.·.print()函数格式化输出-超详解

    Python·.·.print()函数格式化输出 print()函数格式为: print(objects, sep=' ', end='\n', file=sys.stdout) 文章目录 Pytho ...

  5. python中函数参数传递的三种方式_python中函数参数传递的几种方法

    转自  http://www.douban.com/note/13413855/ Python中函数参数的传递是通过"赋值"来传递的.但这条规则只回答了函数参数传递的"战 ...

  6. python print函数用法总结

    print函数说明 print() 函数的详细语法格式如下: print (value,...,  sep='',  end='\n',  file=sys.stdout,  flush=False) ...

  7. python print函数用法_Python3.2中Print函数用法实例详解

    本文实例讲述了Python3.2中Print函数用法.分享给大家供大家参考.具体分析如下: 1. 输出字符串 >>> strHello = 'Hello World' >> ...

  8. Python print函数用法,print 格式化输出

    使用print输出各型的 字符串 整数 浮点数 出度及精度控制 strHello = 'Hello Python' print strHello #输出结果:Hello Python #直接出字符串 ...

  9. Python——print()函数的学习笔记

    1 致谢 感谢高老师的讲解! 2 前言 今天在学习Python编程~ 3 print()函数的使用 print()函数使用{}花括号作为占位符: 可以看看print()函数这种输出的方式,

最新文章

  1. github开源项目分享
  2. 历届试题 打印十字图
  3. 【ZOJ - 3591】Nim(博弈问题,思维,STLmap)
  4. java 图片拼接_Java拼接多张图片,可以连接在一起 | 学步园
  5. Star Schema完全参考手册学习笔记六
  6. spring入门常见的问题及解决办法
  7. 架构设计之Spring-Session分布式集群会话管理
  8. 快手用户群体分析_抖音、快手竞品分析报告
  9. node_注册页面+连接数据库+加密
  10. 在线html5编辑器uedit,ueditor集成秀米编辑器 - HTML - php中文网博客
  11. java引用不同包下同名类_Java--一个类中引用不同包下同名类
  12. 【shareX】自定义图片上传-基于tu.my最新版API
  13. 计算机实验原理word,完整word版计算机组成原理实验报告 微控制器
  14. 租用国内的云主机的话,选阿里云还是盛大云?
  15. 互金协会:各相关机构即日起就高息现金贷等违规业务开展自查
  16. 微信跳转到关注公众号万能链接
  17. VS6中出现:由于找不到MSVCRTD.DLL,无法继续执行代码
  18. linux忘记密码修改密码_如何更改我的Linux密码
  19. Xsolla 解读中国手机游戏支付方式
  20. mysql一个字符占用多少个字节

热门文章

  1. “leave the world behind”十一快乐出行
  2. SAP生产订单预留(下)
  3. sap内表 table_LINE
  4. SIT和UAT有什么区别?
  5. SAP 建立WebService
  6. SAP系统权限管理及参数设置
  7. ABAP日期函数应用
  8. ALV GRID学习笔记----Double Click事件
  9. SD--关于销售环节的折扣、折让、回扣、佣金的介绍
  10. mysql中char和text的区别_mysql中text与varchar与char的区别