zoukankan      html  css  js  c++  java
  • 好玩的Python库tqdm (转载)

    原文地址:

    https://blog.csdn.net/zejianli/article/details/77915751

    可以显示循环的进度条的库,再也不用担心不知道程序跑到哪里还要跑多久了

    tqdm()可以直接包裹iterable的对象

    from tqdm import tqdm,trange
    from time import sleep
    text = ""
    for char in tqdm(["a", "b", "c", "d"]):
        text = text + char
        sleep(0.1)

    trange(i)相当于tqdm(range(i))

    for i in trange(100):
        sleep(0.01)

    可以在循环外面预先定义tqdm的对象

    pbar = tqdm(["a", "b", "c", "d"])
    for char in pbar:
        pbar.set_description("Processing %s" % char)

    有两个参数比较有用,desc(str)和leave(bool)
    desc可以指定这个循环的的信息,以便区分。上面的set_description(str)和这个应该是一样的。
    leave则表示进度条跑完了之后是否继续保留

    for i in tqdm(range(10), desc='1st loop'):
        for j in trange(100, desc='2nd loop', leave=False):
            sleep(0.01)

    如果要在Jupyter Notebook上面使用,那么要把tqdm换成tqdm_notebook,trange换成tnrange

    
    
    from tqdm import tnrange, tqdm_notebook
    from time import sleep


    for i in tqdm_notebook(range(10), desc='1st loop'):
        for j in tnrange(100, desc='2nd loop', leave=False):
            sleep(0.01)

    如果在终端运行时需要在循环内打印点什么,就不能直接用print()了,而要用tqdm.write(str)

    在Jupyter Notebook里面没有这个问题,还能用print()。

    =======================================================

    另注(非原文内容):

    desc(str) 指定循环信息是比较好用的,如:

    from tqdm import trange, tqdm
    from time import sleep
    
    
    for i in tqdm(range(100), desc='1st loop'):
            sleep(1)

    实际操作中发现    desc(str)   比    set_description   好用。

  • 相关阅读:
    做项目时写的数据库操作类。SqlHelper.cs(三)
    写的登录三层结构demo(工厂模式)
    在GridView中进行排序
    微信小程序 POST请求
    mysql replace into用法详细说明
    ThinkPHP Where 条件中使用表达式
    Google发转码工具 可将安卓程序转至iOS
    IOS笔记 本地化多语言支持
    persits.jpeg 水印组件
    PHP 数组操作
  • 原文地址:https://www.cnblogs.com/devilmaycry812839668/p/10203917.html
Copyright © 2011-2022 走看看