while循环的进度条,该循环使用条件语句,也适用于Python3



我想要一个进度条,在while循环之前开始,并以它结束,如下所示:

a = [ '1', '2', '3', '4', '5', '6'] ## This can be 10, 15, 1000 elements 
b = 5
c = []
timeout = time.time() + 60*b
while True:
for i in a:
if len(a) < 2:
print('Ok')
elif len(a) >= 2:
a.remove(i)
time.sleep(10)
if len(a) == 2 :
print('Achieved results')
break
elif time.time() > timeout:
print('Time ran out')
break
else:
print('Still waiting calculations')
pass

我知道我的超时是由一个变量定义的,但它仅限于我将通过该参数提供的内容,但我如何为所有计算时间制作进度条?

此外,一旦计算按要求完成或时间用完,我如何打破进度条?

谢谢

在我们解决之前,您当前代码的一些问题。

  1. 列表a具有字符串'1'、'2'和'3'。但是,您要将then作为整数进行添加,并检查整数值
  2. 变量"i"也是一个字符串。所以你不能把整数1加到i上。它会失败的

是否要重新访问代码?

无法添加评论,因为我没有足够的分数添加评论,所以使用回答部分为您提供反馈。

进入你的答案,没有简单的方法来提供一个酒吧,除非你使用图形界面。显示进度的一种方法是,每次进入循环时都打印出一个字符串。

例如,您可以有一个while循环,如下所示:

x = 0
while True:
x +=1
print ('=', end = '')
if x > 20: break

每次代码经过循环时,输出都会打印一个=。您可以继续打印字符串"="或"。"每次进入流程并退出流程时。end=''将确保print语句保持在同一行。所以它最终会看起来像一个酒吧。

基于我对python的有限了解,这是我最接近的。

最新更新