首页 > 解决方案 > 图书馆会员课,不知道我哪里错了

问题描述

我正在尝试完成一系列类定义任务,但似乎无法超越这一点。它是 3 部分系列的一部分;第一部分要求您为图书馆书籍建模,我可以轻松完成。

下一部分是要求创建一个Member类来为图书馆成员建模并包含一个borrow_book()和一个return_book()方法,并获取该成员的所有借书列表以按字母顺序打印出来。

我不明白我错在哪一部分。有人能指出我正确的方向吗?到目前为止,我已经在下面包含了我的代码。

class Book(object):

    def __init__(self, title, author, copies=1, loan=0):
        self.title = title
        self.author = author
        self.copies = copies
        self.loan = loan

    def checkbook(self, title):
        for book in self.title:
            if book.title in self.title:
                return book
            else:
                print("Sorry, Not Available.")

    def  borrow_book(self):
        abc = self.checkbook(title)
        print(abc)
        self.loan += 1
        self.copies -= 1

    def return_book(self):
        self.loan -= 1

    def __str__(self):
        r = []
        r.append('Title: {}'.format(self.title))
        r.append('Author: {}'.format(self.author))
        r.append('Copies: {}'.format(self.copies))
        r.append('On loan: {}'.format(self.loan))
        return '\n'.join(r)

def sort_books(b):
    return b.title

class Member(object):

    def __init__(self, mid, name, loans=0):
        self.mid = mid
        self.name = name
        self.loans = loans
        self.d = {}

    def __str__(self, mid, name, loans=0):
        r = []
        r.append('ID: {}'.format(self.mid))
        r.append('Name: {}'.format(self.name))
        r.append('Loans: {}'.format(self.loans))
        l = ['{}'.format(b) for b in sorted(self.d.values(), key=sort_books)]
        return '\n'.join(r)
        return '\n'.join(l)

标签: pythonpython-3.x

解决方案


推荐阅读