前两次求和去除Python

问题描述 投票:0回答:1

任何人都可以编写一个Python程序来帮助我删除所有元素,即下面列表中前两个元素的总和。

[2,5,7,8,15,1,9,10,2,12]→[2,5,8,1,9,2]→[2,5,8,1,2]

python list loops sum iterator
1个回答
0
投票

您可以通过迭代列表并仅保留那些不是前两个元素之和的元素来实现此目的。

这是我的建议:

def remove_sum_of_previous_two(lst):
    result = [lst[0], lst[1]]  
    for i in range(2, len(lst)):
        if lst[i] != lst[i - 1] + lst[i - 2]:
            result.append(lst[i])
    return result


input_list = [2, 5, 7, 8, 15, 1, 9, 10, 2, 12]
output_list = remove_sum_of_previous_two(input_list)
print(output_list) #[2, 5, 8, 1, 9, 2]
© www.soinside.com 2019 - 2024. All rights reserved.