下面是一个示例代码,展示了如何比较两个列表并将它们分配到一个新的对象列表中。
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
# 定义两个列表
list1 = [Person("Alice", 25), Person("Bob", 30), Person("Charlie", 35)]
list2 = [Person("David", 20), Person("Alice", 25), Person("Eve", 40)]
# 创建一个空的对象列表,用于存储相同元素
common_list = []
# 比较两个列表中的元素
for person1 in list1:
for person2 in list2:
if person1.name == person2.name and person1.age == person2.age:
common_list.append(person1)
# 输出结果
for person in common_list:
print(person.name, person.age)
这个示例中,我们定义了一个Person类,它有两个属性:name和age。然后我们创建了两个列表list1和list2,每个列表都包含了一些Person对象。
接下来,我们创建一个空的对象列表common_list,用于存储两个列表中相同的Person对象。
然后,我们使用两层嵌套的循环来比较list1和list2中的元素。如果两个Person对象的name和age属性相等,则将该Person对象添加到common_list中。
最后,我们遍历common_list并输出结果。在这个示例中,输出的结果是Alice 25,因为这个Person对象在list1和list2中都存在。