例如,如果我有3个字符串列表,则:
['make ford', 'model taurus', 'color white']
['make chevy', 'model impala', 'color white']
['make ford', 'model taurus', 'color white']
检测list与1和2之间发生的更改的最佳方法是什么?然后更新清单3? 例如,输出为:
['make chevy', 'model impala', 'color white']
我要实现的基本逻辑是:
if string1[0] = string2[0], then string3[0] remains unchanged
if string1[0] /= string2[0], then string3[0] is changed to string2[0]'s value
...等等 将这些列表转换为数组会更好吗?
答案 0 :(得分:1)
您可以执行以下操作:
a = ['make ford','model taurus','color white']
b = ['chevy chevy','model impala','color white']
c = [“制造福特”,“金牛座模型”,“彩色白色”]
对于范围内的我(len(a)):
如果a [i]!= b [i]:c [i] = b [i]
打印(c)
输出
['make chevy','model impala','color white']
此答案假定所有列表的大小均相同。如果列表大小不同,则只能比较(更改)最小列表的索引,在这种情况下,您可以尝试以下操作:
length = min(len(a),len(b),len(c))
对于我在范围(长度)中:
如果a [i]!= b [i]:
c [i] = b [i]
打印(c)