包含
1.单独数据的进度条
2.复杂对象集合的进度条
3.结合 excel 读取以及业务操作做到全局进度条
from tqdm import tqdm import time from openpyxl import Workbook, load_workbook # 集合类型的进度条 def list_tqdm(): # 生成随机数 data = list() for i in range(1, 100): data.append(i) # desc 前缀描述 # unit 单位 for i in tqdm(range(len(data)), desc='用法 1', unit='单位'): time.sleep(0.01) with tqdm(range(len(data)), desc='用法 2', unit='单位') as tbar: for i in tbar: tbar.update() time.sleep(0.01) #对象迭代器 def iterator_tqdm_1(): data = list() for i in range(1, 100): data.append({ 'index':str('111')+str(i), 'name':str(i) }) data_iter=iter(data) for i in tqdm(iterable=data_iter, total=len(data), desc='用法 3', unit='单位'): # i 作为对象,必须指定 total time.sleep(0.01) def iterator_tqdm_2(): data = list() for i in range(1, 100): data.append({ 'index':str('111')+str(i), 'name':str(i) }) data_iter=iter(data) with tqdm(iterable=data_iter, total=len(data), desc='用法 4', unit='单位') as tbar: for i in tbar: # i 作为对象,必须指定 total tbar.update(1) time.sleep(0.01) #结合 excel def excel_tqdm(): #读取 excel wb = load_workbook('static/9999.xlsx', 'r+') #获得所有 sheet 页码 sheet_names = wb.sheetnames for name in sheet_names: ws = wb[name] insert_list = [] #每个 sheet 页码产生一个进度条 with tqdm(iterable=ws.iter_rows(min_row=4, min_col=1, max_col=13), desc=f'test_excel \t {name}', total=(ws.max_row - 4), unit='条') as tbar: #循环行 for row in tbar: #单行的业务操作 #循环列 for cell in row: pass tbar.update(1) if __name__ == '__main__': list_tqdm() iterator_tqdm_1() iterator_tqdm_2() excel_tqdm()
标签:tqdm,tbar,python,进度条,excel,iter,data From: https://www.cnblogs.com/Sora-L/p/17829947.html