day19 进度条 & 随机验证码

Posted smart1san

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了day19 进度条 & 随机验证码相关的知识,希望对你有一定的参考价值。

一、解决进度条的宽度

1 print(%-50s  %>)  #左对齐,宽度为50
2 
3 print(%-%ds  %50)   # d 先被传值,此时 s 还未传值
4 
5 print(%s%%  %50)   # s 后第一个 % 是取消掉后面一个 % 的意义
6 
7 此时,若需取消 print(%-%ds  %50) 中第一个 % 的意义,可以在其旁边再加一个%,形式为print(%%-%ds %50),
8 其结果为  %-50s  ,继续为 s 传值,就是  %-50s %">",此时进度条的宽度问题就解决了

 

二、不换行+跳到行首打印

1 import time
2 time.sleep(1)
3 print((
 %%-ds %50) %> ,end= )   # 
 将光标移至行首,end=‘ ‘ 控制光标不换行
4 time.sleep(1)
5 print((
 %%-ds %50) %>> ,end= )   # 
 将光标移至行首,end=‘ ‘ 控制光标不换行

三、最终结果

import time
def make_progress(percent,width=80):
  if percent>1:percent=1  # 百分比有可能超过1(假如当total_size=1235,recv_size=1234时,第一次传输时没有问题,第二次传输时,百分比就超过1了)
  # 输出的字符串
  show_str=(%%-%ds %width) % (int(percent*width)* >)     # 根据已下载的百分比进行打印
  print(
%s %s%% %(show_str,int(percent * 100)),end=" ")

total_size=123456
recv_size=0
while recv_sie<total_size:
  time.sleep(0.1)
  recv_size+=1234
  percent=recv_size/total_size
  # 调用进度条功能去打印进度条(进度条应该根据下载的百分比来改变)
  make_progress(percent)

 四、随机验证码(数字+大写字母)

 1 import random
 2 def ver(n):
 3   res=""
 4   for i in range(n):  
 5     # 循环一次得到一个随机字符(数字或者字母)
 6     s=chr(random.randint(65,90))
 7     num=str(random.randint(0,9))   # TypeError: must be str, not int
 8     res+=random.choice([s,num])
 9   return res
10 res=ver(n)  # n 传入具体数字,可随机生成n位数的验证码
11 print(res)

 

以上是关于day19 进度条 & 随机验证码的主要内容,如果未能解决你的问题,请参考以下文章

day5-随机数相关:random模块&string模块

Python 验证码生产程序和进度条程序

Axure 验证码进度条分页条(翻页)搜索框选项卡

python实现验证码与进度条

DAY19-Pillow制作验证码

第四周PSP&进度条