【发布时间】:2012-05-06 21:29:26
【问题描述】:
我有两个文件要相互比较并形成一个列表。每个文件都有自己的类。书和人。在这些中,我有不同的属性。我要比较的是:person.personalcode == book.borrowed。从这里我想要一个所有借来的书的清单。我是这样开始的:
for person in person_list:
for book in booklibrary_list:
if person.personalcode == book.borrowed:
person.books.append(book, person)
for person in person_list:
if len(person.books) > 0:
print(person.personalcode + "," + person.firstname + person.lastname + "have borrowed the following books: ")
for book in person.books:
print(book)
for person in person_list:
person.books = []
但它不起作用,我错过了什么或做错了什么?
【问题讨论】:
-
person_list是文件对象吗?如果是这样,person是一个字符串,因此没有属性personalcode。 -
发布它是如何不起作用的。如果有错误,请发布它。如果输出不是你所期望的,发布你得到的和你想要的。
-
person 是我的班级,personalcode 是属性。
-
到目前为止看起来不错,可能是您对 Book 或 Person 类的编码方式存在问题。
-
标题应该不是“比较两个文件...”,因为它与文件 IO 无关。