一、进度条
1、利用time模块实现
import time
for i in range(0, 101, 2):time.sleep(0.3)num = i // 2if i == 100:process = "\r[%3s%% ]: |%-50s|\n" % (i, '#' * num)else:process = "\r[%3s%% ]: |%-50s|" % (i, '#' * num)print(process, end='', flush=True)
2、使用 tqdm 模块实现
①安装
pip install tqdm
②迭代对象处理
from tqdm import tqdm,trange
import time#for i in tqdm(range(100)):
for i in trange(100):time.sleep(0.1)pass
③观察处理的数据
通过tqdm提供的set_description方法可以实时查看每次处理的数据
from tqdm import tqdm
import timepbar = tqdm(["a","b","c","d"])
for c in pbar:time.sleep(1)pbar.set_description("Processing %s"%c)
④手动设置处理的进度
通过update方法可以控制每次进度条更新的进度
from tqdm import tqdm
import time#total参数设置进度条的总长度
with tqdm(total=100) as pbar:for i in range(100):time.sleep(0.05)#每次更新进度条的长度pbar.update(1)
除了使用with之外,还可以使用另外一种方法实现上面的效果
from tqdm import tqdm
import time#total参数设置进度条的总长度
pbar = tqdm(total=100)
for i in range(100):time.sleep(0.05)#每次更新进度条的长度pbar.update(1)
#关闭占用的资源
pbar.close()
⑤多进程进度条
在使用多进程处理任务的时候,通过tqdm可以实时查看每一个进程任务的处理情况
from time import sleep
from tqdm import trange, tqdm
from multiprocessing import Pool, freeze_support, RLockL = list(range(9))def progresser(n):interval = 0.001 / (n + 2)total = 5000text = "#{}, est. {:<04.2}s".format(n, interval * total)for i in trange(total, desc=text, position=n,ascii=True):sleep(interval)if __name__ == '__main__':freeze_support() # for Windows supportp = Pool(len(L),# again, for Windows supportinitializer=tqdm.set_lock, initargs=(RLock(),))p.map(progresser, L)print("\n" * (len(L) - 2))
二、二维码
1、安装依赖包
pip install qrcode
2、简单示例
import qrcode# 二维码内容,如果url为网址,扫码明会跳转网址,如果url为纯文本,扫码则会显示文本
url = "https://movie.douban.com/"
# 生成二维码
img = qrcode.make(data=url)
# 直接显示二维码
img.show()
# 保存二维码为文件
img.save("示例图片.jpg")
好的,这期就到这里!我是刀尖过客,goodbye !