1、写一个用户的登陆注册的界面,用户的密码用hashlib加密存在文件中,登陆时候,用户的密码要和文件中的密码一致才行
def sha(password): #加密函数
passwd = hashlib.sha256(bytes('wxtrkbc', encoding='utf-8'))
passwd.update(bytes(password,encoding='utf-8'))
return passwd.hexdigest()
def register(user,passwd): #注册函数,并将密码加密后存在文件中
with open('db','a') as f :
f.write(user+':'+sha(passwd))
def login(user,passwd): #登陆函数 并判断登陆密码是否正确
with open('db','r',encoding='utf-8')as f :
for line in f :
info=line.strip().split(':')
if user==info[0] and sha(passwd)==info[1]: # 将密码加密后与文件中存储的进行对比,一样就是相同的用户
print('login success')
return True
else:
print('login error')
return False
def main():
k=input('1注册,2登陆')
if int(k)==1:
user=input('输入用户名:')
passwd=input('输入密码:')
register(user,passwd)
elif int(k)==2:
user = input('输入用户名:')
passwd = input('输入密码:')
login(user,passwd)
else:
return
2、写一个进度条,用百分比显示进度
import os,sys,time
for i in range(101):
sys.stdout.write('
%s %s%%' % ('#'*int(i/100*100),int(i/100*100)))
sys.stdout.flush()
# s+='#'
# print('%s %s%%' %(s,int(i/50*100)))
time.sleep(0.2)
# for i in range(101): #改进一下
# #显示进度条百分比 #号从1开始 空格从99递减
# hashes = '#' * int(i / 100.0 * 100)
# spaces = ' ' * (100 - len(hashes))
# sys.stdout.write("
[%s] %d%%" % (hashes + spaces, i))
# sys.stdout.flush()
# time.sleep(0.05)
3、利用微信接口来判断某一QQ号的状态
import requests
from xml.etree import ElementTree as ET
response = requests.get('http://www.webxml.com.cn//webservices/qqOnlineWebService.asmx/qqCheckOnline?qqCode=5768476386')
r = response.text
node = ET.XML(r)
if node.text == 'Y':
print('在线')
elif node.text == 'V':
print('隐身')
else:
print('离线')
4、利用微信接口来获取列车时刻表
import requests
from xml.etree import ElementTree as ET
response=requests.get('http://www.webxml.com.cn/WebServices/TrainTimeWebService.asmx/getDetailInfoByTrainCode?TrainCode=K234&UserID=')
r=response.text
root=ET.XML(r)
for node in root.iter('TrainDetailInfo'):
print(node.find('TrainStation').text,node.find('ArriveTime').text)