def remove_odd_multiples(lst):
"""
输入:一个列表 lst
输出:新列表,已删除奇数倍数的原列表
"""
# 建立一个空列表,用于存储删除后的数字
new_lst = []
# 遍历列表 lst 中的每个数字
for num in lst:
# 如果数字是奇数倍数,则跳过
if num % 2 == 1 and any(num / i % 2 == 0 for i in range(3, int(num**(0.5))+1) if num % i == 0):
continue
# 否则将其添加到新列表中
else:
new_lst.append(num)
return new_lst
# 例子
lst = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
new_lst = remove_odd_multiples(lst)
print(new_lst) # 输出 [1, 2, 3, 4, 7, 8, 11, 12]
这个函数会遍历输入的列表中的每个数字,并判断其是否是奇数倍数。如果是,就跳过,否则将它添加到一个新列表中。最后,函数返回这个新列表,其中已删除了所有的奇数倍数。