通过用Python输出进度条效果,学习perf_counter()和sleep()函数的用法。

首先声明一下,下面的代码是我在看中国大学mooc里的教学视频学来的。

觉得很有意思,分享一下。

先看一下,执行完毕的结果吧,进度条跑到了100%,停止之后的效果就是图中所示。

下面分析一下代码:

port time                     #引入time库,后面用到了该库的两个函数perf_counter()和sleep()。

scale = 50                    # 定义变量scale,后面主要用来做循环计数、控制输出字符长度、计算当前进度条的百分比等。

print("执行开始".center(scale//2,"-"))      # .center()控制输出的样式,宽度为25//2,即22,汉字居中,两侧填充‘-’。

start = time.perf_counter()   #调用一次perf_counter(),从计算机系统里随机选一个时间点A,计算其距离当前时间点B1有多少秒。当第二次调用该函数时,默认从第一次调用的时间点A算起,距离当前时间点B2有多少秒。两个函数取差,即实现从时间点B1到B2的计时功能。

for i in range(scale+1):   

    a = '*' * i             #  i个长度的‘*’符号

    b = '.' * (scale-i)  # (scale-i) 个长度的‘.’符

### 各 Python 库的功能介绍及用途 #### 1. **NumPy** NumPy 是一个支持多维数组矩阵运算的基础库,广泛应用于科学计算领域。它提供了高效的数值操作函数以及线性代数、傅里叶变换等功能[^1]。 ```python import numpy as np arr = np.array([1, 2, 3]) print(np.mean(arr)) # 计算平均值 ``` #### 2. **Pandas** Pandas 提供了灵活高效的数据结构(如 DataFrame Series),适合处理表格型数据时间序列数据。它是数据分析的核心工具之一,可以轻松完成数据清洗、转换统计分析等工作[^2]。 ```python import pandas as pd df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) print(df.describe()) # 数据描述性统计 ``` #### 3. **os** `os` 模块主要用于与操作系统交互,提供文件路径操作、进程管理、环境变量访问等功能。它是标准库的一部分,无需额外安装。 ```python import os print(os.getcwd()) # 获取当前工作目录 ``` #### 4. **Matplotlib** Matplotlib 是一个强大的绘图库,能够绘制各种静态、动态图表,适用于数据可视化场景。它可以生成折线图、散点图、柱状图等多种类型的图形[^3]。 ```python import matplotlib.pyplot as plt plt.plot([1, 2, 3], [4, 5, 6]) # 绘制简单折线图 plt.show() ``` #### 5. **Seaborn** Seaborn 是基于 Matplotlib 构建的高级可视化库,专注于统计数据的美观展示。它的默认样式更加现代,并内置了许多复杂图表的支持[^4]。 ```python import seaborn as sns sns.set_theme(style="whitegrid") tips = sns.load_dataset("tips") # 加载示例数据集 sns.barplot(x="day", y="total_bill", data=tips) # 条形图 plt.show() ``` #### 6. **re** `re` 模块实现了正则表达式的功能,用于字符串匹配、替换分割等操作。它是 Python 标准库中的重要组成部分。 ```python import re pattern = r"\d+" # 数字模式 text = "There are 12 apples" result = re.findall(pattern, text) print(result) # 输出 ['12'] ``` #### 7. **tqdm** `tqdm` 是一个轻量级进度条库,能够在循环过程中显示任务执行的进度情况,提升用户体验。通常用于长时间运行的任务监控。 ```python from tqdm import tqdm for i in tqdm(range(100)): pass # 模拟耗时操作 ``` #### 8. **time** `time` 模块提供了多种时间相关的功能,包括获取当前时间戳、延迟程序执行、测量代码运行时间等。这也是 Python 标准库的一部分。 ```python import time start_time = time.time() # 开始计时 time.sleep(1) # 延迟一秒 end_time = time.time() # 结束计时 print(f"Elapsed Time: {end_time - start_time} seconds") ``` --- ### 总结 上述库涵盖了从数据处理到可视化的多个方面,其中 NumPy Pandas 主要负责数据存储与操作;Matplotlib Seaborn 则侧重于数据呈现;而 `os`、`re`、`tqdm` `time` 属于通用工具类模块。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值