鱼C论坛

 找回密码
 立即注册
查看: 1492|回复: 7

[已解决]python做进度条

[复制链接]
发表于 2024-2-2 21:52:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
rt
最佳答案
2024-2-2 21:53:53
陶远航 发表于 2024-02-02 21:53
tqdm怎么做?在IDLE里


要在Python中使用`tqdm`库实现进度条,首先需要安装该库。您可以在命令行中使用以下命令来安装`tqdm`:

  1. pip install tqdm
复制代码


安装成功后,您可以使用以下代码示例在IDLE中创建一个简单的进度条:

  1. from tqdm import tqdm
  2. import time

  3. total = 100  # 总共的任务数
  4. with tqdm(total=total, ncols=80) as pbar:
  5.     for i in range(total):
  6.         time.sleep(0.1)  # 模拟任务执行的耗时
  7.         pbar.update(1)  # 更新进度条
复制代码


在这个示例中,我们使用了`tqdm`库中的`tqdm`函数创建了一个进度条对象`pbar`,设置了总共的任务数为100,并指定进度条在终端的宽度为80个字符。然后,在循环中执行任务时,我们使用`pbar.update(1)`更新进度条,模拟每个任务完成时的进度更新。在每次更新进度条之间,我们还使用`time.sleep(0.1)`来模拟任务执行的耗时。

您可以根据实际需求调整总任务数、进度条的宽度以及任务执行的耗时。希望对您有帮助!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

本帖被以下淘专辑推荐:

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2024-2-2 21:52:44 | 显示全部楼层
想要在Python中实现一个进度条,可以使用`time`模块和`sys`模块来实现。下面是一个简单的代码示例:

  1. import time
  2. import sys

  3. def progress_bar(total, length=50):
  4.     start_time = time.time()
  5.     progress = 0
  6.     while progress <= total:
  7.         elapsed_time = time.time() - start_time
  8.         percent = progress / total * 100
  9.         filled_length = int(length * progress // total)
  10.         bar = '#' * filled_length + '-' * (length - filled_length)
  11.         sys.stdout.write('\r[%s] %.1f%% (%d seconds elapsed)' % (bar, percent, elapsed_time))
  12.         sys.stdout.flush()
  13.         time.sleep(0.1)
  14.         progress += 1
  15.     sys.stdout.write('\n')

  16. progress_bar(100)
复制代码


这段代码首先定义了一个函数`progress_bar`,它接受两个参数:`total`表示总共的进度步数,`length`表示进度条的长度(默认为50)。然后,在`while`循环中,使用`sys.stdout.write()`函数来生成进度条的输出,并用`sys.stdout.flush()`将其立即显示出来。最后,使用`time.sleep()`函数来暂停一小段时间,模拟进度的变化。

你可以调用`progress_bar`函数并传入进度的总数来使用这个进度条。上面的示例中,进度总数为100,所以进度条会从0%到100%逐渐增长,并伴随着经过的秒数。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-2-2 21:53:34 | 显示全部楼层
FishC 发表于 2024-2-2 21:52
想要在Python中实现一个进度条,可以使用`time`模块和`sys`模块来实现。下面是一个简单的代码示例:

tqdm怎么做?在IDLE里
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-2 21:53:53 | 显示全部楼层    本楼为最佳答案   
陶远航 发表于 2024-02-02 21:53
tqdm怎么做?在IDLE里


要在Python中使用`tqdm`库实现进度条,首先需要安装该库。您可以在命令行中使用以下命令来安装`tqdm`:

  1. pip install tqdm
复制代码


安装成功后,您可以使用以下代码示例在IDLE中创建一个简单的进度条:

  1. from tqdm import tqdm
  2. import time

  3. total = 100  # 总共的任务数
  4. with tqdm(total=total, ncols=80) as pbar:
  5.     for i in range(total):
  6.         time.sleep(0.1)  # 模拟任务执行的耗时
  7.         pbar.update(1)  # 更新进度条
复制代码


在这个示例中,我们使用了`tqdm`库中的`tqdm`函数创建了一个进度条对象`pbar`,设置了总共的任务数为100,并指定进度条在终端的宽度为80个字符。然后,在循环中执行任务时,我们使用`pbar.update(1)`更新进度条,模拟每个任务完成时的进度更新。在每次更新进度条之间,我们还使用`time.sleep(0.1)`来模拟任务执行的耗时。

您可以根据实际需求调整总任务数、进度条的宽度以及任务执行的耗时。希望对您有帮助!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-2 22:06:30 | 显示全部楼层
卧槽,回复晚了

小甲鱼给过教程:https://fishc.com.cn/forum.php?mod=viewthread&tid=239057
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-3 07:50:46 | 显示全部楼层
Tkinter 就能做

评分

参与人数 1荣誉 +5 贡献 +3 收起 理由
陶远航 + 5 + 3

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2024-2-3 07:52:05 | 显示全部楼层

给你升级
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-2-3 08:50:09 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-22 09:42

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表