爱tqdm进度条,但是当我在 jenkins 上使用它时,我不断收到一堆奇怪的工件,并且 stdout 中出现过多的膨胀(具体来说,[A
无处不在)。 tqdm 中是否有 secret 模式可以使其与 jenkins 很好地配合?无缝检测 Jenkins 等非交互式 shell 的奖励积分。这是我的典型输出:
label: 0it [00:00, ?it/s][A
[A
16%|#6 | 5378/33302 [36:28<2:30:49, 3.09it/s]
[A
16%|#6 | 5379/33302 [36:29<2:36:46, 2.97it/s]
[A
...
最佳答案
我会选择这样的东西:
from tqdm import tqdm
import os
# try this
for i in tqdm(..., disable=None):
...
# alternative if the above doesn't work
for i in tqdm(..., disable=os.environ.get("JENKINS_HOME")):
...
# or even...
for i in tqdm(..., disable=os.environ.get("JENKINS_HOME") is not None):
...
请注意,disable=None
应自动检查诸如 sys.stdout.isatty()
之类的内容。
不幸的是,对于 Jenkins 不支持 CR
(\r
)(tqdm
的基本要求),我们无能为力。
tqdm
does not require any dependencies (not evencurses
!), just Python and an environment supporting carriage return\r
and line feed\n
control characters.
关于jenkins - 如何让 tqdm 与 jenkins 配合良好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46243363/