学习笔记之二十三 实例
图书管理系统
C盘下有一个文件夹,内有两个文件,一个保存所有用户注册的信息(包括用户名和密码),一个保存所有的图书名,另一个保存所有用户和其所借的书籍
注册函数定义:
def register():
username=input(‘请输入用户名:’)
password=input(‘请输入密码:’)
repassword=input(‘情输入确认密码:’)
if password=repassword:
#将注册信息录入指定的保存文件中保存
with open(r'c:\p1\book\users.txt','w') as wstream:
wstream.write('{} {}\n'.format(username,password)
print('注册成功!')
else:
print('两次输入密码不一致!')
登录函数定义:
def login():
username=input('请输入用户名:')
password=input('请输入密码:')
if username and password: #判断是否输入非空
input_user='{} {}\n'.format(username,password) #方便后续比较验证
#输入完成后需要检查是否与数据库中一致,若一致登录成功,否则登录失败,重新输入登录
with open(r'c:\p1\book\users.txt') as rstream:
while True#此处用户注册信息有可能不在第一行,所以需要多次读取数据库中数据
user=rstream.readline()
if not user: #user is not错误写法,本以为读取到最后一行还没验证ok
print('用户名或密码输入有误,请重新输入:')
break
#else: 此处不用加else,因为读到内容会直接跳出上一个if
if input=user:
print('登录成功!')
break
#else:
#continue这俩也不需要
图书名遍历写出函数定义:
def book():
print(’-------------图书有:-----------’)
with open(r’c:/p1/book/books.txt’) as rstream
books=rstream.read()
for book in books:
print(‘图书有:’)
#调用函数:
login()
register()
book()