用 python print() 函数实现的三个特效
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() 函数实现的三个特效相关推荐
- Python小技巧:用 print() 函数实现的三个特效
print() 应该是初学者最先接触到的第一个 Python 函数,因为几乎所有的启蒙课程都是从 print('Hello world') 开始的.事实上, print() 也是程序员使用频率最高的函 ...
- Python print 函数- Python零基础入门教程
目录 一.Python print 函数简介 二.Python print 函数语法 三.Python print 函数使用 1.objects 参数 2.sep 参数 3.end 参数 4.flus ...
- Python print函数及format()格式化输出详解
今天继续给大家介绍Python相关知识,本文主要内容是Python print函数及format()格式化输出详解. 一.print()函数基本使用 print()函数是Python中用于向控制台输出 ...
- Python·.·.print()函数格式化输出-超详解
Python·.·.print()函数格式化输出 print()函数格式为: print(objects, sep=' ', end='\n', file=sys.stdout) 文章目录 Pytho ...
- python中函数参数传递的三种方式_python中函数参数传递的几种方法
转自 http://www.douban.com/note/13413855/ Python中函数参数的传递是通过"赋值"来传递的.但这条规则只回答了函数参数传递的"战 ...
- python print函数用法总结
print函数说明 print() 函数的详细语法格式如下: print (value,..., sep='', end='\n', file=sys.stdout, flush=False) ...
- python print函数用法_Python3.2中Print函数用法实例详解
本文实例讲述了Python3.2中Print函数用法.分享给大家供大家参考.具体分析如下: 1. 输出字符串 >>> strHello = 'Hello World' >> ...
- Python print函数用法,print 格式化输出
使用print输出各型的 字符串 整数 浮点数 出度及精度控制 strHello = 'Hello Python' print strHello #输出结果:Hello Python #直接出字符串 ...
- Python——print()函数的学习笔记
1 致谢 感谢高老师的讲解! 2 前言 今天在学习Python编程~ 3 print()函数的使用 print()函数使用{}花括号作为占位符: 可以看看print()函数这种输出的方式,
最新文章
- github开源项目分享
- 历届试题 打印十字图
- 【ZOJ - 3591】Nim(博弈问题,思维,STLmap)
- java 图片拼接_Java拼接多张图片,可以连接在一起 | 学步园
- Star Schema完全参考手册学习笔记六
- spring入门常见的问题及解决办法
- 架构设计之Spring-Session分布式集群会话管理
- 快手用户群体分析_抖音、快手竞品分析报告
- node_注册页面+连接数据库+加密
- 在线html5编辑器uedit,ueditor集成秀米编辑器 - HTML - php中文网博客
- java引用不同包下同名类_Java--一个类中引用不同包下同名类
- 【shareX】自定义图片上传-基于tu.my最新版API
- 计算机实验原理word,完整word版计算机组成原理实验报告 微控制器
- 租用国内的云主机的话,选阿里云还是盛大云?
- 互金协会:各相关机构即日起就高息现金贷等违规业务开展自查
- 微信跳转到关注公众号万能链接
- VS6中出现:由于找不到MSVCRTD.DLL,无法继续执行代码
- linux忘记密码修改密码_如何更改我的Linux密码
- Xsolla 解读中国手机游戏支付方式
- mysql一个字符占用多少个字节