l = [['a','b',1], ['a','c',2], ['a','b',3], ['a','c',4], ['a','b',5]] L = [] for i in range (len(l)): flag = True for j in range(len(L)): if L[j][:-1] == l[i][:-1]: flag = False z=j break if flag == True: L.append(l[i]) else: L[z][-1] = L[z][-1] + l[i][-1] print('l: ') print(l) print('L: ') print(L) 输出为: l: [['a', 'b', 1], ['a', 'c', 2], ['a', 'b', 3], ['a', 'c', 4], ['a', 'b', 5]] L: [['a', 'b', 1]] l: [['a', 'b', 1], ['a', 'c', 2], ['a', 'b', 3], ['a', 'c', 4], ['a', 'b', 5]] L: [['a', 'b', 1], ['a', 'c', 2]] l: [['a', 'b', 4], ['a', 'c', 2], ['a', 'b', 3], ['a', 'c', 4], ['a', 'b', 5]] L: [['a', 'b', 4], ['a', 'c', 2]] l: [['a', 'b', 4], ['a', 'c', 6], ['a', 'b', 3], ['a', 'c', 4], ['a', 'b', 5]] L: [['a', 'b', 4], ['a', 'c', 6]] l: [['a', 'b', 9], ['a', 'c', 6], ['a', 'b', 3], ['a', 'c', 4], ['a', 'b', 5]] L: [['a', 'b', 9], ['a', 'c', 6]] 我想实现的是,把子列表中前两个字符相同的合并,最后一位的值相加,放到新列表中 但是我没有给l赋值,为什么l列表里的值也变了呢