Python 打印进度条

# -*- encoding: utf-8 -*-
"""
@Author:      Little duo
@Time:        2023/2/27 21:51
@Contact:     1049041957@qq.com
@License:     (C)Copyright 2021-2022, Little duo
"""
import time


def progress(percent: int = 100, width=100):
    """
     进度打印
    :param percent: 进度
    :param width: 进度条长度
    :return:
    """
    if percent >= 100:
        percent = 100

    show_str = ('[%%-%ds]' % width) % (int(width * percent / 100) * "#")  # 字符串拼接的嵌套使用
    print('\r%s %d%%' % (show_str, percent), end='')


data_size = 3030333  # 定义传输的数据,实际应用中这个值改一下就可以了
receive_size = 0
while receive_size < data_size:
    time.sleep(0.01)  # 模拟数据的传输延迟
    receive_size += 1024  # 每次收1024
    receive_per = int(100 * receive_size / data_size)  # 接收的比例
    progress(receive_per)  # 调用进度条函数

posted @ 2023-02-28 00:38  LittleDuo  阅读(41)  评论(0)    收藏  举报