风变编程(Python自学笔记)第14关-流浪图书的旅途

风变编程(Python自学笔记)第14关-流浪图书的旅途,第1张

概述1、完成一个项目的流程:a.明确项目目标b.分析过程,拆解项目c.逐步执行,代码实现2、类的两种用法:a.类作为实例对象的模板:使用类生成实例对象。类作为实例对象的模版,每个实例创建后,都将拥有类的所有属性和方法。b.类作为函数包:用类将多个函数(方法)打包封装在一起,让类中的方法相互

1、完成一个项目的流程:

a.明确项目目标

b.分析过程,拆解项目

c.逐步执行,代码实现

2、类的两种用法:

a.类作为实例对象的模板:使用类生成实例对象。类作为实例对象的模版,每个实例创建后,都将拥有类的所有属性和方法。

b.类作为函数包:用类将多个函数(方法)打包封装在一起,让类中的方法相互配合。

3、在Python中,如果方法名形式是左右带双下划线的,那么就属于特殊方法(如初始化方法),有着特殊的功能。

4、调用对象方法时self不能忘。

5、流浪图书的旅途完整代码。

class Book:     def __init__(self, name, author, comment, state = 0):        self.name = name        self.author = author        self.comment = comment        self.state = state     def __str__(self):        status = '未借出'        if self.state == 1:            status = '已借出'        return '名称:《%s》 作者:%s 推荐语:%s\n状态:%s ' % (self.name, self.author, self.comment, status) class BookManager:    books = []    def __init__(self):        book1 = Book('惶然录','费尔南多·佩索阿','一个迷失方向且濒于崩溃的灵魂的自我启示,一首对默默无闻、失败、智慧、困难和沉默的赞美诗。')        book2 = Book('以箭为翅','简媜','调和空灵文风与禅宗境界,刻画人间之缘起缘灭。像一条柔韧的绳子,情这个字,不知勒痛多少人的心肉。')        book3 = Book('心是孤独的猎手','卡森·麦卡勒斯','我们渴望倾诉,却从未倾听。女孩、黑人、哑巴、醉鬼、鳏夫的孤独形态各异,却从未退场。',1)        self.books.append(book1)        self.books.append(book2)        self.books.append(book3)     def menu(self):        print('欢迎使用流浪图书管理系统,每本沉默的好书都是一座流浪的岛屿,希望你有缘发现并着陆,为精神家园找到一片栖息地。\n')        while True:            print('1.查询所有书籍\n2.添加书籍\n3.借阅书籍\n4.归还书籍\n5.退出系统\n')            choice = int(input('请输入数字选择对应的功能:'))            if choice == 1:                self.show_all_book()            elif choice == 2:                self.add_book()            elif choice == 3:                self.lend_book()            elif choice == 4:                self.return_book()            elif choice == 5:                print('感谢使用!愿你我成为爱书之人,在茫茫书海里相遇。')                break     def show_all_book(self):        print('书籍信息如下:')        for book in self.books:            print(book)            print('')    def add_book(self):        new_name = input('请输入书籍名称:')        new_author =  input('请输入作者名称:')        new_comment = input('请输入书籍推荐语:')        new_book = Book(new_name, new_author, new_comment)        self.books.append(new_book)        print('书籍录入成功!\n')    def check_book(self,name):        for book in self.books:            if book.name == name:                 return book         else:            return None    def lend_book(self):        name = input('请输入书籍的名称:')        res = self.check_book(name)        if res != None:            if res.state == 1:                print('你来晚了一步,这本书已经被借走了噢')            else:                print('借阅成功,借了不看会变胖噢~')                res.state = 1        else:            print('这本书暂时没有收录在系统里呢')        def return_book(self):        name = input('请输入归还书籍的名称:')        res = self.check_book(name)        # 调用check_book方法,将返回值赋值给变量res        if res == None:        # 如果返回的是空值,即这本书的书名不在系统里            print('没有这本书噢,你恐怕输错了书名~')        else:        # 如果返回的是实例对象            if res.state == 0:             # 如果实例属性state等于0,即这本书的借阅状态为'未借出'                print('这本书没有被借走,在等待有缘人的垂青呢!')            else:             # 如果实例属性state等于1,即状态为'已借出'                print('归还成功!')                res.state = 0                # 归还后书籍借阅状态为0,重置为'未借出' manager = BookManager()manager.menu()
总结

以上是内存溢出为你收集整理的风变编程(Python自学笔记)第14关-流浪图书的旅途全部内容,希望文章能够帮你解决风变编程(Python自学笔记)第14关-流浪图书的旅途所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1185498.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存