我想要一个类“Library”,它有一个类变量“books”,它是库中所有书籍的列表。所以课程可以开始
class Library:
books = []
现在我想在我的收藏中添加一本书,但我找不到任何语法 这样做。我脑子里的模型就像是
def addBook(self, book):
books.append(book)
我希望用类似
之类的主程序调用lib = Library()
b = Book(author, title)
lib.addBook(b)
但是,我无法找到任何方法来做到这一点。我总是在“追加”中出错,我尝试将该书添加到列表中。
答案 0 :(得分:5)
您应该将books
声明为实例变量,而不是类变量:
class Library:
def __init__(self):
self.books = []
def addBook(self, book):
self.books.append(book)
因此您可以创建Library
的实例:
lib = Library()
b = Book(...)
lib.addBook(b)
注意:
self
的详细信息,请参阅此post。Book
课程已正确实施。答案 1 :(得分:0)
查看此example以获取初始化和设置器:
class Library:
def __init__(self):
self.books = []
def add(self, x):
self.books.append(x)
答案 2 :(得分:0)
class Library():
def __init__(self):
self.books = []
def addBook(self, book):
self.books.append(book)