Home>
I want to make a loading bar like inapt
on thelinux
when downloading package files or installing them.
There somehow it is necessary to erase the lines, I was looking for this, but many scripts did not work for some reason.
Yes, yes, yes, in one line.
Krutos VIP2022-01-30 18:29:38-
Answer # 1
try this
import time from progress.bar import IncrementalBar mylist= [1,2,3,4,5,6,7,8] bar= IncrementalBar('Countdown', max= len(mylist)) for item in mylist: bar.next() time.sleep(1) bar.finish()
welcome to This Club in Russian! please try to leave a little more detailed answers. You can add to your answer by clicking edit.
aleksandr barakin2022-01-30 12:23:18 -
Answer # 2
Personally, I do this (not using modules):
import time for percent in range(100): s= f"[{(percent //10) * '■'}" s += f"{(10 -(percent //10)) * '○'}]" s += f"{percent}" print(s, end="\r") time.sleep(0.1) >>> [■■■■■■■○○○] 78
s is broken into lines to make it easier to read. In fact, everything can be collected in one line
-
Answer # 3
The code is not mine, but stolen from the Internet, which I use. Without additional libraries 1 function
import time def printProgressBar(iteration, total, prefix= '', suffix= '', decimals= 1, length= 100, fill= '█', printEnd= "\r"): """ Call in a loop to create terminal progress bar @params: iteration -Required : current iteration (Int) total -Required : total iterations (Int) prefix -Optional : prefix string (Str) suffix -Optional : suffix string (Str) decimals -Optional : positive number of decimals in percent complete (Int) length -Optional : character length of bar (Int) fill -Optional : bar fill character (Str) printEnd -Optional : end character (e.g. "\r", "\r\n") (Str) """ percent= ("{0:." + str(decimals) + "f}").format(100 * (iteration /float(total))) filledLength= int(length * iteration //total) bar= fill * filledLength + '-' * (length -filledLength) print('\r%s |%s| %s%% %s' % (prefix, bar, percent, suffix), end= printEnd) #Print New Line on Complete if iteration== total: print() #A List of Items items= list(range(0, 57)) l= len(items) # Initial call to print 0% progress printProgressBar(0, l, prefix= 'Progress:', suffix= 'Complete', length= 50) for i, item in enumerate(items): # Do stuff... time.sleep(0.1) # Update Progress Bar printProgressBar(i + 1, l, prefix= 'Progress:', suffix= 'Complete', length= 50)
-
Answer # 4
In [1]: from tqdm import tqdm In [2]: import time In [3]: for i in tqdm(range(10)): ...: time.sleep(2) ...: 30%|██████████████████████████████▌ | 3/10 [00:06<00:14, 2.00s/it]
Related questions
- How to translate into a normal format -a date from numbers. Python
- Program for finding synonyms of Russian words python
- javascript : How to pass value of js variables to python(eel)?
- python : How to create a window in the game for example (dota2)
- python : How to speed up polynomial hash calculation
- python : Sending a file using telegramAPI
- python : Input() constraint (int, float)
- python : Bot on aiogram does not see the answer to someone else's message
- python : Why does list.remove() incorrectly remove elements in a loop?
those. loading is displayed in one line? And this line keeps changing
kin4stat2022-01-30 18:29:38