以下是一个比较两个列表中的用户定义对象的解决方法的示例代码:
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
函数进行比较。根据比较结果输出相应的提示信息。
下一篇:比较两个列表中的元素