gpt4 book ai didi

python - 打印给定列表中的偶数

转载 作者:行者123 更新时间:2023-11-28 22:11:29 25 4
gpt4 key购买 nike

我开始使用 python 并练习代码以打印列表中的偶数。

示例列表:

[1, 2, 3, 4, 5, 6, 7, 8, 9] 

代码:

def p_even(lst):
for num in lst:
if num %2 == 0:
return num

我期待列表 [2,4,6,8] 中的偶数,但只是给我数字 2。

最佳答案

是的,该代码将返回它找到的第一个偶数,并在返回时停止处理列表。

如果你想要所有的偶数,你可以使用(a):

def p_even(lst):
# _____Construct new list_____
# / \
return [x for x in lst if x % 2 == 0]
# \____________/ \___________/
# from these elements that meet this condition

(注释仅用于解释,您编写的任何实际代码中可能都不需要它们)。

这在 Python 中称为列表理解,是一种强大的方式(在本例中)通过过滤某些元素从您的列表中创建另一个列表。

要打印元素,您可以只打印返回的列表本身(下面的第一行)或打印每个元素(下面的 for 循环):

print(p_even(range(20))
for itm in p_even(range(20)):
print(itm)

(a)可以为此使用显式循环,例如:

def p_even(lst):
even_lst = []
for itm in lst:
if itm % 2 == 0:
even_lst.append(itm)

但它并不真正被认为是“pythonic”。 Python 提供了非常 表现力(和简洁)的方式来执行此类操作,在我看来,您最好学习它们,因为它们将使您的代码更具可读性和易于维护。

关于python - 打印给定列表中的偶数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55642865/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com