from eg321 import admin_login
# 用户登录
def login():
rNo = input("请输入用户编号:")
rPwd = input("请输入密码:")
with open(r'C:\Users\Desktop\python期末大作业2022.2\reader.txt', 'r',encoding="utf-8") as f:
for line in f:
reader = line.strip().split()
if reader[0] == rNo and reader[1] == rPwd:
with open(r"C:\Users\Desktop\python期末大作业2022.2\admin.txt", 'r') as f:
for line in f:
# 比较输入的账户和密码与文件中对应的账户和密码是否匹配
if rNo + ',' + rPwd == line.strip():
print("登录成功,欢迎管理员 %s" % reader[2])
# 进入管理员操作界面
else:
print("登录成功,欢迎%s!" % reader[2])
return reader
print("登录失败,请检查用户名和密码是否正确。")
# 用户注册
def register():
rNo = input("请输入用户编号:")
rPwd = input("请输入密码:")
rName = input("请输入姓名:")
rDept = input("请输入单位:")
rSex = input("请输入性别:")
rTe = input("请输入电话号码:")
rRolel = "读者"
with open(r'C:\Users\Desktop\python期末大作业2022.2\reader.txt', 'a',encoding="utf-8") as f:
f.write("%s,%s,%s,%s,%s,%s,%s\n" % (rNo, rPwd, rName, rDept, rSex, rTe, rRolel))
print("注册成功!请登录。")
while True:
choice = input("请选择功能:1.登录 2.注册 3.退出\n")
if choice == "1":
login()
elif choice == "2":
register()
elif choice == "3":
break
else:
print("无效输入,请重新选择。")
为什么会显示我列表为空和索引超过范围呢?我要怎么修改呢?
line打印出来看看,应该是空的
打印line看看里面到底是什么,是不是文件里有空行
或者分隔符其实是逗号不是空格