ProgressBar与功能的计时相同

时间:2019-05-04 23:37:33

标签: python-3.x progress-bar

我希望进度条与某个功能的计时相同,在启动时开始,在完成时停止

我尝试使用while循环,但没有成功。

def clean(path):
    for path in paths:
        try:
            rmtree(path)
        except OSError:
            pass
while clean is True:
    for i in range(1):
        sys.stdout.write("%s" % (" " * toolbar_width))
        sys.stdout.flush()
        sys.stdout.write("\b" * (toolbar_width + 1))  

        for i in range(toolbar_width):
            sleep(0.1)  # do real work here
            # update the bar
            sys.stdout.write("█████")
            sys.stdout.flush()
        sys.stdout.write("\nDone Cleaning\n")

我希望进度条能够根据clean()功能将其打印出来 它运行时将运行,完成时将停止。

1 个答案:

答案 0 :(得分:0)

在“ True”语句之后,您缺少“:”。您的代码是正确的。只要确保检查一下您的工作即可!看起来应该像这样:

def clean(path):
    for path in paths:
        try:
            rmtree(path)
        except OSError:
            pass
    while clean is True:
        for i in range(1):
            sys.stdout.write("%s" % (" " * toolbar_width))
            sys.stdout.flush()
            sys.stdout.write("\b" * (toolbar_width + 1))  

            for i in range(toolbar_width):
                sleep(0.1)  # do real work here
                # update the bar
                sys.stdout.write("█████")
                sys.stdout.flush()
            sys.stdout.write("\nDone Cleaning\n")