python练习题图书管理系统

python练习图书管理系统

该系统的要求实现以下五种功能:

1.对所有书籍信息查询

2.对单个书籍信息查询

3.增加

4.借阅

5.归还

6.退出

#创建一个类:Book,定义参数,对象
class Book(object):
    def __init__(self, id,name,status, amount):
        self.id = id
        self.name = name
        self.status = status
        self.amount= amount
    def __str__(self):
        if self.status == 1:
            stats = '未借出'
        elif self.status == 0:
            stats = '已借出'
        else:
            stats = '状态异常'
        return '编号: (%s) 名称: 《%s》 状态: <%s> 数量: %s' \
               % (self.id, self.name, stats, self.amount)
#创建一个类BookManage,将书籍信息输入
class BookManage(object):
    books = []
    def start(self):
        self.books.append(Book("1号",'python', 1, '29'"本"))
        self.books.append(Book("2号",'c语言', 1, '4'"本"))
        self.books.append(Book("3号",'java',  1, '1'"本"))
#通过while循环,if选择结构,让学生进行功能服务选择
    def Menu(self):
        self.start()
        while True:
            print("""
                    ******  图书管理系统   ******
                           1.查询图书
                           2.查询单个图书
                           3.增加图书
                           4.借阅图书
                           5.归还图书
                           6.退出系统
        """)
            choice = input('请选择:')
            if choice == '1':
                self.showAllBook()
            elif choice == '2':
                self.chaxunBook()
            elif choice == '3':
                self.addBook()
            elif choice == '4':
                self.borrowBook()
            elif choice == '5':
                self.guihuanBook()
            elif choice == '6':
                print('欢迎下次使用...')
                exit()
            else:
                print('请输入正确选择')
                continue
#1、查询图书,创建showALLBook函数
    def showAllBook(self):
        for book in self.books:
            print(book)
#2、 查询单个图书,chaxun函数增加书籍
    def chaxunBook(self):
        name = input('请输入要查询图书名称:')
        for book in self.books:
            if name==book.name:
                print('编号: %d 《名称》: 《%s》 状态: %d 数量: %e'
                      % (book.id,book.name,book.status,book.amount))
                return book
            else:
                print('《%s》没有找到!' % name)
                return None
# 3、增加图书,创建addbook函数增加书籍种类
    def addBook(self):
        id  = int (input('请输入编号'))
        self.books.append(Book(id, input('名称:'), 1, input('存储数量:')))
        print('图书《%》增加成功' % id)
#4、借阅图书,创建函数yunyongfor循环,和if选择语句运行判断
    def checkBook(self, name):
        for book in self.books:
            if book.name == name:
                return book
        else:
            return None
    def borrowBook(self):
        name = input('借阅图书名称: ')
        ret = self.checkBook(name)
        print(ret)
        if ret != None:
            if ret.status == 0:
                print('书籍《%s》已经借出' % name)
            else:
                ret.status = 0
                print('书籍《%s》借阅成功' % name)
        else:
            print('书籍《%d》不存在' % name)
#创建函数,运用if嵌套循环进行判断。
    def guihuanBook(self):
        name = input('归还图书名称:')
        ret = self.checkBook(name)
        if ret != None:
            if ret.status == 0:
                ret.status = 1
                print('书籍《%s》归还成功' % name)
                print(ret)
            else:
                print('书籍《%s》未借出' % name)
        else:
            print('书籍《%d》不存在' % name)
manager = BookManage()
manager.Menu()

解释:已经在代码的主要的转接处,进行了注释。

主要:运用了1.函数;2.类;3.if选择语句;4.while循环语句;5.init函数,str函数;5.input语句;

思路:首先确定参数,对象的数量,判断创建函数的数量,以及各个函数的作用,对功能进行分析。分析作用:选择哪一种流程,会更好一点。如:选择功能,用if选择语句最为适合。

猜你喜欢

转载自blog.csdn.net/weixin_61805348/article/details/125044484
今日推荐