gpt4 book ai didi

python - 返回列表的第一个数字

转载 作者:太空宇宙 更新时间:2023-11-04 09:38:12 25 4
gpt4 key购买 nike

所以,我正在尝试创建一个脚本,其中返回确定列表的第一个偶数。如果列表不包含偶数,则返回 -1。

起初我尝试使用 str.find(),但我不知道如何让它工作。有帮助吗?

from typing import List

def f_even(items: List[int]) -> int:
"""
>>>f_even([1, 3, 4, 6])
4
>>>f_even([1, 3])
-1
"""
even_numbers = []
even = even_numbers[0]

for number in items:
if number % 2 == 0:
even_numbers.append(number)
return even

现在我得到一个错误,其中 even = even_numbers[0];索引超出范围。我觉得我使这段代码复杂化了很多。

最佳答案

在生成器上使用 next() 并在非偶数情况下返回 -1

lst = [1, 3, 4, 6]
print(next((x for x in lst if x % 2 == 0), -1))
# 4

在特殊情况下(没有平衡):

lst = [1, 3, 3, 9]
print(next((x for x in lst if x % 2 == 0), -1))
# -1

关于python - 返回列表的第一个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52789693/

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