Python简易版图书管理系统

yipeiwu_com5年前Python基础

本文实例为大家分享了python图书管理系统的具体代码,供大家参考,具体内容如下

"""
图书管理系统
"""
import random

# books={书名:剩余数量, 书名:剩余数量}
import time

books = {"防脱发指南": 5, "颈椎康复指南": 3, "从删库到跑路": 0}
# students_books=[name,{书}]
students_books = {"赵路遥": []}


class book(object):
 """先传一个书名,以后可根据需要传 开始借书时间,书的详细信息,以及之前借书的人等等"""

 def __init__(self, bookname):
 super(book, self).__init__()
 self.bookname = bookname

 def getBookName(self):
 return self.bookname


if __name__ == "__main__":
 print("*" * 50)
 print("欢迎来到遥遥哥的图书馆".center(50))
 print("*" * 50)
 while True:
 choices = input("""  请选择你所需要的功能
1.查询书籍 2.借书 3.还书 4.显示所有书籍 5.查询用户所借的书 6.退出系统:""")
 if choices == '1':
  # 查询书籍
  print('--------查询书籍---------')
  search_book = input('请输入要查询的书籍名称:')
  # 遍历books
  for book in books.keys():
  if search_book in book:
   print("正在查找,请稍等")
   time.sleep(1)
   if books[search_book] > 0:
   print("你说查找的书,目前还有{}本".format(books[search_book]))
   break
   else:
   print("你所查找的书,已经借完,请过段时间之后再来")
   break
  else:
  print("对不起你所输入的书不存在,可联系管理员补充")

 elif choices == '2':
  # 借书
  print("欢迎来到借书页面".center(50))
  flag = True
  while flag:
  user_name = input("请输入用户名")
  borrow_book = input("请输入你所借的书名")
  for book in books.keys():
   if borrow_book == book:
   if user_name in students_books.keys():
    if books[borrow_book] > 0:
    if borrow_book not in students_books[user_name]:
     print(r"你已经借书<<{}>>".format(borrow_book))
     students_books[user_name].append(borrow_book)
     books[borrow_book] -= 1
     print(r"现在<<{}>>,剩余{}本".format(borrow_book, books[borrow_book]))
     flag = False
     break
    else:
     print("对不起,你已经借了一本")
     flag = False
     break
    else:
    print("对不起你所借的书剩余{}本,请下次再来".format(books[borrow_book]))
    flag = False
    break
   else:
    students_books[user_name] = []
    students_books[user_name].append(borrow_book)
    books[borrow_book] -= 1
    print(r"新用户( {} )已经借书<< {} >>,目前此书剩余{}本".format(user_name, borrow_book, books[borrow_book]))
    flag = False
    break

  else:
   print("对不起你所查找的书,不存在,请联系管理员更新")

 elif choices == '3':
  flag=True
  while flag:
  user_name = input("请输入你的名字")
  repay_book = input("情输入你所要还的书")
  for name in students_books.keys():
   #先去判断有没有这个人
   if name==user_name:
   #判断有没有这本书在不在该用户
   if repay_book in students_books[name]:
    #判断此本书书否在图书馆库里面
    if repay_book in books.keys():
    books[repay_book]+=1
    students_books[name].remove(repay_book)
    print("正在还书,请稍等")
    time.sleep(1)
    print("你已经还书了,这本书数量为{}".format(books[repay_book]))
    flag=False
    break
    else:
    print("此本书不在图书馆库里面,请重新输入")
    break
   else:
    print("你所输入的书,并在你的借书目录里面,请重新输入")
    break
  else:
   print("对不起你所输入的人不存在,请重新输入")

 elif choices == '4':
  # 显示所有书籍
  print("图书馆目前所藏书籍如下:")
  for bookkey, bookvalue in list(books.items()):
  print(r"<<{}>>目前还有 {} 本".format(bookkey, bookvalue))
  time.sleep(0.5)
 elif choices=='5':
  username=input(" 请输入你要查询的用户名")
  for stu in students_books.keys():
  if username== stu:
   print("{}所借的书有{}".format(user_name,students_books[username]))
  else:
  print("你查找的用户不在")
 elif choices == '6':
  choice = ("确定是否退出,确认请输入yes,否则请输入no")
  if choice == 'yes':
  print("感谢你的使用,再见")
  break
 else:
  print('输入错误请重新输入....')

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python代码编写计算器小程序

本文实例为大家分享了python计算器小程序的具体代码,供大家参考,具体内容如下 import tkinter import tkinter.messagebox import ma...

python使用opencv驱动摄像头的方法

如下所示: #coding:utf-8 import cv2 import sys from PIL import Image def CatchUsbVideo(win...

PyCharm+PySpark远程调试的环境配置的方法

PyCharm+PySpark远程调试的环境配置的方法

前言:前两天准备用 Python 在 Spark 上处理量几十G的数据,熟料在利用PyCharm进行PySpark远程调试时掉入深坑,特写此博文以帮助同样深处坑中的bigdata&mac...

Python 画出来六维图

Python 画出来六维图

来自维基百科 我们的大脑通常最多能感知三维空间,超过三维就很难想象了。尽管是三维,理解起来也很费劲,所以大多数情况下都使用二维平面。 不过,我们仍然可以绘制出多维空间,今天就来用 P...

Python 创建空的list,以及append用法讲解

Python中list的用法:如何创建list,如何表达list中的元素,如何修改和删除list 运行环境:Python 3.6.2 0.空list的创建: l = list()...