1. 程式人生 > >8.9 每日課後作業系列之進度條 and 驗證碼

8.9 每日課後作業系列之進度條 and 驗證碼

多少 nsh 每日 lse 數字 案例 刷新 break 課堂

# 今日作業:
# 1.掌握課堂案例:驗證碼
import random
import timesq
# def make_code(i):
# res = ""
# for j in range(i):
# # 隨機0到9
# num = str(random.randint(0,9))
# c = chr(random.randint(65,90))
# s = random.choice([num,c])
# res += s
# return res
#
# def suiji():
# res=‘‘
# for j in range(6):
# num=str(random.randint(0,9))
# s=random.choice(num)
# res+=s
# return res

def suiji():
res=‘‘
for i in range(6):
num=str(random.randint(0,9))
s=random.choice(num)
res+=s
return res
# print(suiji(6))
# 2.掌握課堂案例:進度條
import time
def jindutiao(baifenbi,kuandu=20):
if baifenbi>=1:
baifenbi=1
zhanshitiao=(‘[%%-%ds]‘%kuandu)%(int(kuandu*baifenbi)*‘$‘)
print((‘\r%s %d%%‘%(zhanshitiao,int(100*baifenbi))),end=‘‘)
xiazai_size=10250
zhenzai_size=0
while True:
time.sleep(2)
zhenzai_size+=1024
jindutiao(zhenzai_size/xiazai_size)
if xiazai_size<=zhenzai_size:
print()
print(‘下載完成‘)
break
import time
def jingdutiao(baifenbi,kuandu=20)
if baifenbi>=1:
baifenbi=1
zhanshitiao=(‘[%%-%ds]‘%kuandu)%int(((kuandu*baifenbi))*‘$‘)
print((‘%s %d%%‘)%(zhanshitiao,int(100*baifenbi)),end=‘‘)
xiazai_size=10250
zhenzai_size=0
while True:
time.sleep(2)
zhenzai_size+=1024
jindutiao(zhenzai_size/xiazai_size)
if xiazai_size<=zhenzai_size:
print()
print(‘下載完成‘)
break
import time
def jindutiao(baifenbi,kuandu=20)
if baifenbi>=1:
baifenbi=1
zhanshitiao=(‘[%%-%ds]‘%kuandu)%(int(kuandu*baifenbi)*‘@‘)
print((‘%s %d%%‘)%(zhanshitiao,int(100*baifenbi)),end=‘‘)
xiazai_size=10250
zhenzai_size=0
while True:
time.sleep(2)
zhenzai_size+=1024
jindutiao(zhenzai_size/xiazai_size)
if xiazai_size<=zhenzai_size:
print()
print(‘下載完成‘)
break





# 擴展:
# 3.控制臺模擬發送驗證碼
# 提示:
# 1)驗證碼為6位純數字
# 2)兩次獲取的間隔為60s
# 3)倒計時為一秒減一次
# 4)流程中的?是實際數字,#為臨時填充字符
# 流程:
# 1)控制臺提示用戶是否發送驗證碼[1:是 0:否]
# get_num=input(‘是否發送驗證碼[1:是 0:否]:‘).strip()
# if get_num==‘1‘:
# print("驗證碼發送成功")
# time.sleep(3)
# suiji()
# print(suiji())
# else:
# print(‘取消發送‘)

# 2)取消發送驗證碼則提示"取消發送"並直接退出程序
# 3)發送成功後,提示用戶"驗證碼發送成功",但3s後才可以獲取到驗證碼
# 4)一旦發送成功後,控制臺會刷新打印倒計時多少秒後可以重新發送驗證碼
# 5)未接收到驗證碼的前3s,控制臺刷新打印的內容是:驗證碼:######,?s後可以重新發送
# 6)驗證碼獲取後,5中的打印內容會替換為:驗證碼:??????,?s後可以重新發送
# 7)只有等"?s後可以重新發送"的?從60變到0,才可以重新執行整個過程

8.9 每日課後作業系列之進度條 and 驗證碼