Skip to main content
 首页 » 编程设计

Python之两个相同长度的列表之间的完全区别

2025年05月04日18grandyang

我有两个列表:

a = ['Peter', '1982', '2000', 'Homeland', '10.34'] 
b = ['Peter', '1982', '2000', 'Homelnad', '10.32'] 

我想要完整的差异。 所以我想要这样的输出: ['', '', '', '', '10.32'] 所以我只想在正确的地方更改值。

是否有一些内置函数?最快的方法是什么?我必须像这样“手动”执行吗?

i = 0 
new_list = [] 
for item in a: 
    if item != b[i]: 
        new_row.append(item) 
    else: 
        new_row.append('') 
    i += 1 
    new_list.append(new_row) 

请您参考如下方法:

我不认为有内置的,但这里有一个更短的“手动”方式:

In [1]: a = ['Peter', '1982', '2000', 'Homeland', '10.34'] 
 
In [2]: b = ['Peter', '1982', '2000', 'Homelnad', '10.32'] 
 
In [3]: [be if ae != be else '' for ae, be in zip(a, b)] 
Out[3]: ['', '', '', 'Homelnad', '10.32']