Python练习实例:文本进度条——数据类型的综合应用
2019-10-08 12:19
447 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/PigeonKiing/article/details/102375664
问题描述
采用字符串的方式,打印可以动态变化的文本进度条,进度条需要能在一行中逐渐变化。
问题分析
首先,这个问题要求打印出类似进度条的字符串,这就会涉及到字符串操作符、字符串函数、字符串输出格式化等知识;
其次,这个问题要求进度条在一行中逐渐变化,这就要求每次字符串的输出不换行且覆盖原来输出的内容,要求会使用转义符“\r”,“\n”等。
最后,设计好程序的结构,即输入和输出,结合上面分析的程序主体,即可完成问题。
求解过程
问题简化
为了更快的将程序主体设计好,我们将问题尽可能的简化。
这个问题,我们可以先将它简化成:
制作几个格式符合要求的的字符串,并将他们逐一输出。
#referes_bar.py import time as t start_t=t.perf_counter() print("安装开始".center(10,"=")) for i in range(11): a=i*"*" b=(10-i)*"." c=i*10 d=t.perf_counter()-start_t print("{:3}% [{}>{}] {:.2f}s".format(c,a,b,d)) t.sleep(0.1) print("安装结束".center(10,"="))
输出结果如下:
=== RESTART: E:/Python3/Doc/class/Lesson3.Number Structure/refresh_bar.py === ===安装开始=== 0% [>..........] 0.04s 10% [*>.........] 0.16s 20% [**>........] 0.39s 30% [***>.......] 0.52s 40% [****>......] 0.64s 50% [*****>.....] 0.78s 60% [******>....] 0.90s 70% [*******>...] 1.01s 80% [********>..] 1.13s 90% [*********>.] 1.35s 100% [**********>] 1.47s ===安装结束===
问题具体化
我们只需要将每一次的输出内容稍作调整,即可达成我们需要的功能:打印可以动态变化的文本进度条,进度条需要能在一行中逐渐变化。
print("\r{:3}% [{}>{}] {:.2f}s".format(c,a,b,d),end="")
其中,"\r"作为转义符是回到本行行首的命令,也就是说我们每一次输出都是在光标所在行的行首开始输出;end="",在输出的结果后面添加一个空字符,因为每次输出会默认在结尾输入“\n”,因此造成每次都是在第二行行首开始输出,而end=""可以以空字符结尾,取缔“\n”,使得程序可以在同一行进行输出,从而产生刷新的效果。
最终程序
#referes_bar.py import time as t start_t=t.perf_counter() print("安装开始".center(10,"=")) for i in range(11): a=i*"*" b=(10-i)*"." c=i*10 d=t.perf_counter()-start_t print("\r{:3}% [{}>{}] {:.2f}s".format(c,a,b,d),end="") t.sleep(0.1) print(“\n”,"安装结束".center(10,"="))
相关文章推荐
- ARM—Linux基本数据类型综合应用实例
- C++ 容器的综合应用的一个简单实例——文本查询程序
- Python数据类型之“文本序列(Text Sequence)”
- Python:入门笔记之list slices计算方法、匿名表达式、CGI、数据类型及应用领域
- Protobuf二进制文件基于Http协议传输的应用实例 ☞ Python与Java之间无关语言的数据传输
- Python 8种基本数据类型简单实例
- python数据类型-字典的练习
- python实例复习3——“天天向上”和文本进度条
- python3的数据类型及数据类型转换实例详解
- Python中数据类型-练习
- Python中的数据类型转换举例及脚本统计服务器内存实例
- Python的数据类型--字典以及字典练习
- python 基本数据类型占用内存空间大小的实例
- python123(Python程序语言设计)-----练习3:基本数据类型
- Python数据类型之Number数字操作实例详解
- 刻意练习:Python基础:——Task01.变量、运算符与数据类型
- Python中的变量、数据类型(数值、列表)操作实例
- Mongodb千万级数据在python下的综合压力测试及应用探讨
- PHP 5 数据类型的具体用法应用实例
- Python数据采集处理分析挖掘可视化应用实例