以下是一个比较两个列表中的用户定义对象的解决方法的示例代码:
class User:
def __init__(self, name, age):
self.name = name
self.age = age
def compare_lists(list1, list2):
if len(list1) != len(list2):
return False
for user1, user2 in zip(list1, list2):
if user1.name != user2.name or user1.age != user2.age:
return False
return True
# 创建两个用户列表
users1 = [User("Alice", 25), User("Bob", 30), User("Charlie", 35)]
users2 = [User("Alice", 25), User("Bob", 30), User("Charlie", 35)]
# 比较两个列表
result = compare_lists(users1, users2)
if result:
print("两个列表中的用户定义对象相同")
else:
print("两个列表中的用户定义对象不同")
这个示例代码中,首先定义了一个User类,具有name和age属性。然后定义了一个compare_lists函数,该函数接受两个列表作为参数,并比较两个列表中的用户定义对象是否相同。
在compare_lists函数中,首先检查两个列表的长度是否相同。如果长度不同,直接返回False表示两个列表中的用户对象不同。
然后使用zip函数将两个列表中的用户对象一一配对进行比较。如果任何一个用户对象的name属性或age属性不相同,就返回False表示两个列表中的用户对象不同。
如果所有用户对象都相同,则返回True表示两个列表中的用户对象相同。
最后,在主程序中创建了两个用户列表users1和users2,并调用compare_lists函数进行比较。根据比较结果输出相应的提示信息。
下一篇:比较两个列表中的元素