मैंने यह कुछ समय पहले लिखा था और इससे वास्तव में खुश हूं। इसका इस्तेमाल करने के लिए स्वतंत्र महसूस करें।
यह एक लेता है indexऔर totalऔर वैकल्पिक रूप से titleया bar_length। एक बार हो जाने पर, घंटे के गिलास को एक चेक-मार्क से बदल दिया जाता है।
⏳ Calculating: [████░░░░░░░░░░░░░░░░░░░░░] 18.0% done
✅ Calculating: [█████████████████████████] 100.0% done
मैंने एक उदाहरण शामिल किया जो इसे परीक्षण करने के लिए चलाया जा सकता है।
import sys
import time
def print_percent_done(index, total, bar_len=50, title='Please wait'):
'''
index is expected to be 0 based index.
0 <= index < total
'''
percent_done = (index+1)/total*100
percent_done = round(percent_done, 1)
done = round(percent_done/(100/bar_len))
togo = bar_len-done
done_str = '█'*int(done)
togo_str = '░'*int(togo)
print(f'\t⏳{title}: [{done_str}{togo_str}] {percent_done}% done', end='\r')
if round(percent_done) == 100:
print('\t✅')
r = 50
for i in range(r):
print_percent_done(i,r)
time.sleep(.02)
shutil.get_terminal_size()यदि मेरी रुचि है, तो टर्मिनल चौड़ाई के आधार पर मेरे पास उत्तरदायी प्रगति पट्टी वाला एक संस्करण है ।