以下是一个比较嵌套列表相似性的示例代码:
def compare_lists(list1, list2):
# 首先检查列表长度是否相等
if len(list1) != len(list2):
return False
# 逐个比较嵌套列表的元素
for i in range(len(list1)):
# 如果元素是嵌套列表,则递归调用compare_lists函数进行比较
if isinstance(list1[i], list) and isinstance(list2[i], list):
if not compare_lists(list1[i], list2[i]):
return False
# 如果元素不是嵌套列表,则直接比较元素值
else:
if list1[i] != list2[i]:
return False
return True
# 测试示例
a = [1, 2, [3, 4]]
b = [1, 2, [3, 4]]
c = [1, 2, [3, 5]]
print(compare_lists(a, b)) # 输出: True
print(compare_lists(a, c)) # 输出: False
这个示例代码中的compare_lists
函数接受两个嵌套列表作为参数,并返回它们是否相似。首先,函数检查两个列表的长度是否相等。如果长度不相等,那么这两个列表肯定不相似,直接返回False
。然后,函数遍历两个列表,并逐个比较它们的元素。如果元素是嵌套列表,则递归调用compare_lists
函数进行比较。如果元素不是嵌套列表,则直接比较元素的值。如果有任何不匹配的元素,函数返回False
。如果所有元素都匹配,函数返回True
。
在示例中,我们先定义了两个嵌套列表a
和b
,它们的元素相同,所以compare_lists(a, b)
返回True
。然后,我们定义了另一个嵌套列表c
,它的最后一个元素不同于a
和b
,所以compare_lists(a, c)
返回False
。
上一篇:比较嵌套关联的时间
下一篇:比较嵌套列表推导中的数字