不知道小伙伴们有没有遇到过这种情况。
一个程序需要循环成千上万次,但是不知道究竟需要多久才能跑完。
中间还不敢停,停了就要重新跑。
我们迫切的需要一个进度条来告诉我们程序到底需要跑多久!
其实这个功能很简单哦~只需要改一行代码就可以啦!
薄荷糖之前的推送中说过10个python工具(程序猿最需要的10个Python工具),其中有一个叫做Faker的库,用来生成假数据可以说是很方便了。
下面我们用faker生成1w条数据。
from faker import Fakerimport pandas as pd# 初始化,声明一个dataframefake = Faker()df = pd.DataFrame(columns=['name','address','email','job','phoneNumber','ip','birthDate','text'])# 用faker生成1w条数据n = 10000for i in range(n): df.loc[i] = [fake.name(),fake.address(),fake.email(),fake.job(),fake.phone_number(),fake.ipv4(),fake.date_of_birth(),fake.text()]from faker import Fakerimport pandas as pd# 初始化,声明一个dataframefake = Faker()df = pd.DataFrame(columns=['name','address','email','job','phoneNumber','ip','birthDate','text'])# 用faker生成1w条数据n = 10000for i in range(n): df.loc[i] = [fake.name(),fake.address(),fake.email(),fake.job(),fake.phone_number(),fake.ipv4(),fake.date_of_birth(),fake.text()]
薄荷糖跑了一会儿,发现程序没什么反应,也不知道需要跑多久。
那我们给它加上一个进度条吧!
from faker import Fakerimport pandas as pdfrom tqdm import tqdm,trangefake = Faker()df = pd.DataFrame(columns=['name','address','email','job','phoneNumber','ip','birthDate','text'])n = 10000for i in tqdm(range(n)): df.loc[i] = [fake.name(),fake.address(),fake.email(),fake.job(),fake.phone_number(),fake.ipv4(),fake.date_of_birth(),fake.text()]
只需要给之前 for 循环(第9行)里的迭代器上加一个 tqdm 就可以了!
是不是很简单~
进度条长这样
实际上,当我们在 for 循环中用 range 时,可以直接改成 trange 来增加进度条。
for i in trange(n):
希望这个黑科技对你有用哦~