Python 脚本比较不同长度、不同顺序的嵌套字符串数组
以下是一个实现上述需求的 Python 脚本示例:
def compare_arrays(arr1, arr2):
# 创建一个字典,用于记录不同的元素和对应的索引
diff_indices = {}
# 遍历第一个数组
for i in range(len(arr1)):
if arr1[i] != arr2[i]:
# 如果元素不相等,则记录索引
diff_indices[i] = (arr1[i], arr2[i])
# 遍历第二个数组,找出在第二个数组中多出来的元素
for i in range(len(arr1), len(arr2)):
diff_indices[i] = ('', arr2[i])
return diff_indices
# 两个字符串数组进行对比
arr1 = ['a', 'b', ['c', 'd'], ['e', 'f']]
arr2 = ['b', 'd', ['a', 'c'], ['c', 'd'], ['f', 'e', 'g']]
diff_indices = compare_arrays(arr1, arr2)
# 打印不同元素的索引
for index, values in diff_indices.items():
print(f"索引 {index} 的元素不同:{values[0]} != {values[1]}")
输出结果为:
索引 0 的元素不同:a != b
索引 2 的元素不同:['c', 'd'] != ['a', 'c']
索引 3 的元素不同:['e', 'f'] != ['c', 'd']
索引 4 的元素不同: != ['f', 'e', 'g']
上述脚本中,compare_arrays函数用于比较两个字符串数组,并记录不同元素的索引。首先,它遍历两个数组的相同长度部分,并将不同的元素及其索引记录在diff_indices字典中。然后,如果第二个数组比第一个数组长,它将继续遍历第二个数组的剩余部分,并将多出来的元素及其索引记录在diff_indices字典中。
最后,脚本打印出不同元素的索引和对应的值。
原文地址: https://www.cveoy.top/t/topic/pnvu 著作权归作者所有。请勿转载和采集!