标签: tqdm

在函数内的 for 循环上使用 tqdm 来检查进度

我正在使用 for 循环遍历目录树中的大型组文件。

这样做时,我想通过控制台中的进度条监视进度。因此,我决定为此使用 tqdm。

目前,我的代码如下所示:

for dirPath, subdirList, fileList in tqdm(os.walk(target_dir)):
        sleep(0.01)
        dirName = dirPath.split(os.path.sep)[-1]
        for fname in fileList:
        *****
Run Code Online (Sandbox Code Playgroud)

输出:

Scanning Directory....
43it [00:23, 11.24 it/s]
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是它没有显示进度条。我想知道如何正确使用它并更好地了解它的工作原理。另外,如果有任何其他可以在此处使用的 tqdm 替代方案。

python progress python-2.7 tqdm

6
推荐指数
3
解决办法
2万
查看次数

使用 tqdm 在进度条之前打印消息

在我的 python 项目中,我使用tqdm模块来显示进度条。\n我想在进度条之前的行上打印一条持久消息。

\n\n

set_description方法在同一行上打印消息,同时tqdm.write创建一个新行。

\n\n

使用set_description

\n\n

$ python pbar.py\n{Task_1 message} 3%|\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88 ]

\n\n

有可能实现这一点

\n\n

$ python pbar.py\n{Task_1 message} \n3%|\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88 ]

\n\n

编辑:

\n\n
from tqdm import tqdm\n\npbar = tqdm(m_list)\nfor item in m_list:\n   # Do work\n   pbar.update(1)\npbar.close()\n
Run Code Online (Sandbox Code Playgroud)\n

python logging tqdm

6
推荐指数
1
解决办法
9798
查看次数

执行前显示的 Tqdm 状态栏

我有一个 tqdm 进度条:

print('foo')
for status in tqdm(cursor.items(count)):
    #process status
    pass
Run Code Online (Sandbox Code Playgroud)

我在循环之前打印了一些消息,但进度条显示在它们之前。是否有任何类型的多线程或我该如何解决这个问题?

python tqdm

6
推荐指数
1
解决办法
1248
查看次数

tqdm 在屏幕环境中打印新行和未知字符

当我使用tqdmin 时screen,它会无限期地在栏中打印一个新行和未知字符。

Epoch 0:   5%|??                           | 255/5474 [03:31<1:12:09,  1.21it/s]
Epoch 0:   2%|?                             | 90/5474 [01:24<1:23:46,  1.07it/s]
Epoch 0:   2%|?                             | 89/5474 [01:23<1:23:57,  1.07it/s]
Run Code Online (Sandbox Code Playgroud)

我用bash作为默认shell并添加了以下配置

export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
export LANGUAGE=en_US.UTF-8

root@35573c9f245c:~/git/pytorch-openai-transformer-lm# cat ~/.screenrc 
# ~/.screenrc
defshell -bash      # dash makes it a login shell
Run Code Online (Sandbox Code Playgroud)

相同的代码在其他终端中运行良好。

关于这个问题的任何提示?谢谢!

shell gnu-screen tqdm

6
推荐指数
1
解决办法
761
查看次数

修复 python 多处理中多个进度条 (tqdm) 的跳跃

我想progresser()针对一系列输入参数 ( ) 并行化任务 ( L)。每个任务的进度应通过终端中的单独进度条进行监控。我正在使用tqdm进度条包。以下代码在我的 Mac 上最多可运行 23 个进度条(L = list(range(23))及以下),但会产生从 开始的进度条的混乱跳跃L = list(range(24))。有谁知道如何解决这个问题?

from time import sleep
import random
from tqdm import tqdm
from multiprocessing import Pool, freeze_support, RLock

L = list(range(24)) # works until 23, breaks starting at 24

def progresser(n):
    text = f'#{n}'

    sampling_counts = 10
    with tqdm(total=sampling_counts, desc=text, position=n+1) as pbar:
        for i in range(sampling_counts):
            sleep(random.uniform(0, 1))
            pbar.update(1)

if __name__ == '__main__':
    freeze_support()

    p = Pool(processes=None, …
Run Code Online (Sandbox Code Playgroud)

python terminal multiprocessing progress-bar tqdm

6
推荐指数
1
解决办法
8001
查看次数

pandas .corr() 方法的进度条

我正在尝试使用 tqdm 或其他一些库在以下代码行中显示进度条:

corrmatrix = adjClose.corr('spearman')

其中 adjClose 是一个数据框,其中包含许多股票代码作为列和按日期索引的多年收盘价。输出最终是一个相关矩阵。

随着更多的代码被添加到数据框中,这段代码往往会花费更多的时间,我想要某种进度的视觉表示来指示代码仍在运行。除非我严重忽略了一些东西,否则谷歌在这方面并没有出现太多。

python correlation pandas tqdm

6
推荐指数
1
解决办法
150
查看次数

每次在 tqdm 对象(VSCode 终端)上调用更新时,进度条(使用 tqdm)都会在新行中打印

我正在尝试使用 Python 中提供的 tqdm 模块打印优化算法的进度状态,但是,每次我尝试更新它时,它都会在新行中打印进度,有没有办法我只能更新原始的 tqdm bar 在开始时被实例化?我的代码如下,它基于 backtrader 回测库:

\n
def optimizer_callbacks(cb):\n    pbar.update()\n\ndef strategy_optim(**kwargs):\n\n    total = np.prod([len(value) for key,value in kwargs.items()])\n\n    csv_file = FDaxCSVData(---data---)\n    cerebro = bt.Cerebro()\n    cerebro.adddata(csv_file)    \n    cerebro.broker.setcash(500000.0)\n    cerebro.broker.setcommission(commission=2.0)\n\n    strats = cerebro.optstrategy(strategy_name, printlog = False, **kwargs)\n\n    global pbar\n    pbar = tqdm.tqdm(smoothing=0.05, desc='Optimization Runs', total=total)\n    cerebro.optcallback(optimizer_callbacks)\n\n    runnings = cerebro.run(optreturn=False, maxcpus=2)  \n\nif __name__=="__main__":\n    strategy_optim(periods = [100, 200, 300],  abs_margin= [25, 50, 75], trail_stop=[10, 20, 30, 40])\n
Run Code Online (Sandbox Code Playgroud)\n

输出:

\n
Optimization Runs:   0%|                                                    | 0/12 [00:00<?, ?it/s]\nOptimization Runs:   8%|\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x88\xe2\x96\x89                                             | …
Run Code Online (Sandbox Code Playgroud)

python back-testing tqdm backtrader

6
推荐指数
2
解决办法
1万
查看次数

tqdm 进度条可以应用于 Flask-SQLalchemy 中过滤的 SQL 查询吗?

我正在使用一个flask-sqlalchemy会话,其中有一个返回列表的简单查询:

results = db.session.query(Item).filter(Item.score > 0).all() 
Run Code Online (Sandbox Code Playgroud)

由于我不知道完成查询需要多长时间,因此我希望看到一个进度条。

这里提供的答案似乎没有承认从早期读取操作创建块的问题。tqdm 可以与数据库读取一起使用吗?就我而言,我pandas两者都不使用。

python sqlalchemy flask-sqlalchemy tqdm

6
推荐指数
0
解决办法
792
查看次数

带有 tqdm 的 Pandas to_csv 进度条

正如标题所暗示的,我试图在执行pandas.to_csv.
我有以下脚本:

def filter_pileup(pileup, output, lists):
    tqdm.pandas(desc='Reading, filtering, exporting', bar_format=BAR_DEFAULT_VIEW)
    # Reading files
    pileup_df = pd.read_csv(pileup, '\t', header=None).progress_apply(lambda x: x)
    lists_df = pd.read_csv(lists, '\t', header=None).progress_apply(lambda x: x)
    # Filtering pileup
    intersection = pd.merge(pileup_df, lists_df, on=[0, 1]).progress_apply(lambda x: x)
    intersection.columns = [i for i in range(len(intersection.columns))]
    intersection = intersection.loc[:, 0:5]
    # Exporting filtered pileup
    intersection.to_csv(output, header=None, index=None, sep='\t')
Run Code Online (Sandbox Code Playgroud)

在前几行中,我找到了一种集成进度条的方法,但此方法对最后一行不起作用,我该如何实现?

python pandas tqdm

6
推荐指数
1
解决办法
350
查看次数

jupyter笔记本中异步的tqdm

我在 Jupyter 笔记本中使用 tqdm 进行异步操作——我应该使用tqdm.notebook(我认为这能让我得到正确的小部件)还是tqdm.asyncio(这可能会让我得到正确的行为——items/sec calc 在我的使用中似乎关闭了) 。

tqdm

6
推荐指数
1
解决办法
721
查看次数