随手练习
import sys
import pickle
with open('books','rb') as file0:
books=pickle.load(file0)
with open('Account','rb') as file:
users=pickle.load(file)
flag=False
def main():
while True:
print('\n\n **********************')
print(' *欢迎来到图书管理系统*')
print(' **********************\n')
print('*********************************')
print('****** 登录-------1 **********')
print('****** 注册-------2 **********')
print('****** 退出-------0 **********')
print('*********************************\n')
v=int(input('请输入对应的数字:'))
if v==2:
register()
elif v==1:
login()
elif v==0:
exit(0)
def register():
username=input('请输入用户名:')
pwd = input("请输入你的密码:")
users.append([username,pwd])
with open('Account','wb') as file1:
pickle.dump(users,file1)
special = ['!','@','#','$','%','^','&','*','(',')','-','_','+','=','{','}',';',':','[',']',';',':','\"','\\','|',',','<','.','>','/','?','~','`']
engUpper = ['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
engLower = ['a','b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
engNums = ['0','1','2','3','4','5','6','7','8','9']
abc = list(pwd)
flag = 0
flagSp = 0
flagUp = 0
flagLo = 0
flagNu = 0
for i in abc:
for k in special:
if(i==k):
flagSp = 1
for k in engLower:
if(i==k):
flagUp = 1
for k in engUpper:
if(i==k):
flagLo = 1
for k in engNums:
if(i==k):
flagNu = 1
flag = (flagSp+flagNu+flagLo+flagUp)
vat = isinstance(flag, int)
print(flag)
if(vat == True):
if(flag == 4 and len(pwd) >= 16):
print("-强密码-")
users.append([username,pwd])
print('注册成功!')
elif(flag == 4 and 8 < len(pwd) <=16):
print("-中高安全密码-")
users.append([username,pwd])
print('注册成功!')
elif(flag == 4 and 8 < len(pwd) <=16):
print("-中低安全密码-")
users.append([username,pwd])
print('注册成功!')
elif(flag == 4 and len(pwd) <= 8):
print("-弱密码-")
print('注册失败!')
elif(flag == 3 and len(pwd) >= 16):
print("-中高安全密码-")
users.append([username,pwd])
print('注册成功!')
elif(flag == 3 and 8 < len(pwd) <=16):
print("-中高安全密码-")
users.append([username,pwd])
print('注册成功!')
elif(flag == 3 and 8 < len(pwd) <=16):
print("-中低安全密码-")
users.append([username,pwd])
print('注册成功!')
elif(flag == 3 and len(pwd) <= 8):
print("-弱密码-")
print('注册失败!')
elif(flag == 2 and len(pwd) >= 16):
print("中低安全密码")
users.append([username,pwd])
print('注册成功!')
elif(flag == 2 and 8 < len(pwd) <=16):
print("-中低安全密码-")
users.append([username,pwd])
print('注册成功!')
elif(flag == 2 and 8 < len(pwd) <=16):
print("-中低安全密码-")
users.append([username,pwd])
print('注册成功!')
elif(flag == 2 and len(pwd) <= 8):
print("-弱密码-")
print('注册失败!')
elif(flag == 1 and len(pwd) >= 8):
print("-弱密码-")
print('注册失败!')
elif(flag == 1 and 8 < len(pwd) <=16):
print("-弱密码-")
print('注册失败!')
elif(flag == 1 and 8 < len(pwd) <=16):
print("-弱密码-")
print('注册失败!')
elif(flag == 1 and len(pwd) <= 8):
print("-弱密码-")
print('注册失败!')
elif(flag == 0):
print("当前密码为空,密码不能为空")
def login():
print('请输入用户名:',end='')
username=input()
print('请输入用户密码:',end='')
password=input()
if [username,password] in users:
print('登录成功!')
flag=True
booksManagement()
else:
print('\n用户名不存在或密码错误! 请重新登录!')
def booksManagement():
while True:
print('\n\n**********************')
print('*欢迎来到图书管理系统*')
print('**********************\n')
print('*********************************')
print('******** 增加书籍--------1 **********')
print('******** 删除书籍--------2 **********')
print('******** 查找书籍--------3 **********')
print('******** 修改书籍--------4 **********')
print('******** 查看所有书籍----5 **********')
print('******** 退出------------0 **********')
print('***************************************\n')
v=int(input('请输入对应的数字:\n'))
try:
if v==1:
bookname=input('请输入书名:')
author=input('请输入作者:')
price=int(input('请输入价格:'))
books.append([bookname,author,price])
print('\n添加书籍成功!')
elif v==2:
bookname=input('请输入书名:')
author=input('请输入作者:')
price=int(input('请输入价格:'))
if [bookname,author,price] in books:
books.remove([bookname,author,price])
print('\n删除书籍成功!')
else:
print('\n该书籍不存在!自动返回...')
elif v==3:
bookname=input('请输入书名:')
print()
j=0
for i in books:
if i[0]==bookname:
j=1
print('书名:',i[0],'作者:',i[1],'价格:',i[2])
if j==0:
print('该书籍不存在!自动返回...')
print('\n查找结束!\n')
elif v==4:
bookname=input('请输入书名:')
author=input('请输入作者:')
price=int(input('请输入价格:'))
if [bookname,author,price] in books:
books.remove([bookname,author,price])
bookname=input('请输入修改后的书名:')
author=input('请输入修改后的作者:')
price=int(input('请输入修改后的价格:'))
books.append([bookname,author,price])
print('\n修改书籍成功!')
else:
print('\n该书籍不存在!自动返回...')
elif v==5:
print('\n书名\t\t','作者\t\t\t','价格\n')
for i in books:
print(i[0],'\t\t',i[1],'\t\t',i[2])
print()
elif v==0:
exit(0)
with open('books','wb') as file0:
pickle.dump(books,file0)
except ValueError:
print('您输入胡信息有误,请重新输入')
main()