python基础题,请用for循环解决

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

编写一个sum_pairs函数,它将一个列表作为参数,并返回列表中包含的偶数之和。
示例: sum_pairs ([4, 7, 12, 0, 21, 5])值16 (因为 16 = 4 + 12 + 0)。

编写一个nb_elem_pairs函数,它将一个列表作为参数,并返回列表中包含的偶数整数。
示例: nb_elem_pairs ([4, 7, 12, 0, 21, 5])值3 (因为4、12和 0 是偶数)。

编写一个max_pair函数,它将一个列表作为参数,并返回列表中包含的最大偶数整数。为简单起见,我们将假设(仅在此问题中)列表始终包含至少一个偶数。
例如: max_pair([4,7,12,0,21,5])是等于以12。

编写一个min_pair函数,它将一个列表作为参数,并返回列表中包含的最小偶数。如果列表不包含偶数,函数将返回None。
例如: min_pair([4,7,12,0,21,5] )是等于以0和min_pair([9,3,1] )是等于以无。

编写一个函数index_of,它将一个整数(假设为偶数)和一个列表作为参数,并返回该整数出现在列表中的索引。如果整数没有出现,函数将返回None。为简单起见,这里假设所寻找的整数在列表中没有出现多次。提示:如果for e in list循环不适合您,请记住您可以执行 for + range 或while。..
示例: index_of (12, [4, 7, 12, 0, 21, 5])为2 (因为 12 位于索引 2 处),并且 index_of (6, [4, 7, 12, 0, 21, 5] )是None。

编写一个find_premier_pair函数,它将一个列表作为参数,并返回列表中第一个出现的偶数整数。如果列表不包含偶数,函数将返回None。
例如: find_first_pair([1,15,4,7,12,3])是等于以 4 和 find_first_pair([1,17,7]) 是等于以 无。

编写一个函数extract_pairs,它接受一个列表l1作为参数,并通过只保留偶数整数(并且不改变它们的顺序)返回从l1获得的列表。请注意,L1必须不能被修改的功能。
示例: extract_pairs ([4, 7, 12, 0, 3])值 [4, 12, 0]并且 extract_pairs ([21, 17, 3]) 值 []。

def sum_pairs(l):
    return sum([i for i in l if i % 2 == 0])

def nb_elem_pairs(l):
    return [i for i in l if i%2==0]

def max_pair(l):
    return max([i for i in l if i%2==0])

def min_pair(l):
    x = [i for i in l if i%2==0]
    if x == []:
        return None
    else:
        return min(x)
    
def index_of(s, l):
    try:
        return l.index(s)
    except:
        return None

def find_premier_pair(l):
    x = [i for i in l if i%2==0]
    if x ==[]:
        return None
    else:
        return x[0]
def extract_pairs(l):
    return [i for i in l if i%2==0]    

def sum_pairs(a_list):
    sum0=0
    for i in a_list:
        if i%2==0:
            sum0+=i
    print(sum0)
def nb_elem_pairs(a_list):
    sum0 = 0
    for i in a_list:
        if i % 2 == 0:
            sum0 += 1
    print(sum0)
def max_pair(a_list):
    sum0 = 0
    for i in a_list:
        if i % 2 == 0:
            if i>sum0:
                sum0,i=i,sum0
    print(sum0)
def min_pair(a_list):
    sum0 = 2
    sum1=0
    for i in a_list:
        if i % 2 == 0:
            sum1+=1
            if i<sum0:
                sum0,i=i,sum0
    if sum1==0:print('None')
    else:print(sum0)
def index_of(a,a_list):
    if a not in a_list:print(None)
    else:
        b=[]
        for i in range(len(a_list)):
            if a_list[i]==a:b.append(i)
        print(b)
def find_premier_pair(a_list):
    for i in a_list:
        if i%2==0:
            print(i)
            break
    else:print('None')
def extract_pairs(l1):
    a=[]
    for i in l1:
        if i%2==0:a.append(i)
    print(a)