python 图书管理系统

books=[
   {"bookname":"红楼梦","numbers":2},
   {"bookname":"西游记","numbers":3},
   {"bookname":"三国演义","numbers":2},
   {"bookname":"水浒传","numbers":2},
   {"bookname":"龙王传说","numbers":2},
   {"bookname":"绝世唐门","numbers":3}
]
students=[
   {"id":"101","password":"123","name":"张三","books":["红楼梦","龙王传说"]},
   {"id":"102","password":"123","name":"李四","books":["红楼梦","三国演义"]},
   {"id":"103","password":"123","name":"王五","books":["水浒传","西游记"]},
   {"id":"104","password":"123","name":"赵六","books":["红楼梦","水浒传"]},
   {"id":"105","password":"123","name":"小明","books":["三国演义","龙王传说"]},
]
def id_book(id):
   for dict_stu in students:
      if dict_stu["id"]==id:
         return dict_stu["books"]      
def lend_book(book):
   stu_books=id_book(user_name)
   if len(stu_books)==5:
      print("只能借5")
      return
   for dict_book  in books:
      if book == dict_book["bookname"]:
         if book in stu_books:
            print("您已借过这本书")
            print(id_book(user_name))
         else:
            if dict_book["numbers"]==0:
               print("这本书已借光")
               print(dict_book)
               return
            for dict_stu in students:
               if dict_stu["id"]==user_name:
                  dict_stu["books"].append(book)
                  print(id_book(user_name))
                  dict_book["numbers"]-=1
                  print(dict_book)
         break
   else:
      print("没有这本书") 
def repay_book(book):
   stu_books=id_book(user_name)
   if book in stu_books:
      stu_books.remove(book)
      for dict_book  in books:
         if book == dict_book["bookname"]:
            dict_book["numbers"]+=1
            print(dict_book)
      print(id_book(user_name))
   else:
      print("您没有这本书")
      print(id_book(user_name))
def change_password():
   old_passwd=input("请输入原密码")
   new_passwd=input("请输入新密码")
   new_passwd1=input("请再次输入新密码")
   if old_passwd!=get_password(user_name):
      print("原密码错误")
      return
   elif new_passwd1!=new_passwd:
      print("两次新密码输入不一致")
      return
   elif len(new_passwd)<6:
      print("请输入长度大于6的新密码")
      return
   else:
      for dict_stu in students:
         if dict_stu["id"]==user_name:
            dict_stu["password"]=new_passwd
      print("修改成功")
def success_login():
   while True:
      choice=input("1.借书 2.还书 3. 修改密码 4.退出")
      if choice=="1":
         book=input("请输入您要借的书名")
         lend_book(book)
      elif choice=="2":
         book=input("请输入你要还的书")
         repay_book(book)
      elif choice=="3":
         change_password()
      elif choice=="4":
         print("退出个人图书管理系统成功")
         print("已进入登录界面")
         login()
         break
def get_password(id):
   for dict_stu in students:
      if dict_stu["id"]==id:
         return dict_stu["password"]
def login():
   global n,user_name,pass_word
   user_name=input("请输入您的id")
   pass_word=input("请输入你的密码")
   if n>2:
      print("您的账号已锁定")
      return
   if user_name=="退出":
      return
   if pass_word==get_password(user_name):
      print("登录成功")
      success_login()
   else:
      print("登录失败请重新登录")
      n+=1
      login()
n=0
user_name=""
pass_word=""
login()
  • 12
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值