gpt4 book ai didi

python - 如何使用列表中的函数获取最小奇数

转载 作者:太空宇宙 更新时间:2023-11-04 06:49:46 24 4
gpt4 key购买 nike

我正在尝试使用 python 获取最小奇数。我使用 lambda、循环和其他方法来获得最小奇数,但我无法使用函数来获得它。这是我的代码

z= [1,8,-4,-9]

def min_odd(x):
for i in x:
if (i%2!=0):
return min(i)

y = min_odd(z)
print (y)

有人能告诉我我在这里遗漏了什么吗?

最佳答案

min() 函数需要一个类似于列表的可迭代对象,然后它将从中生成最小的元素。

例如min([1,0,3]) 给出 0

因此,如果你想使用它,你必须创建一个奇数列表(或其他可迭代的),然后你可以将其传递给它:

def min_odd(x):
odds = []
for i in x:
if i % 2 != 0:
odds.append(i)
return min(odds)

请注意,我们还可以使用列表推导式:

def min_odd(x):
return min([i for i in x if i % 2 != 0])

两者都有效。


另一种方法是将当前的最小奇数值存储在一个变量中,并在遇到较小的奇数值时更新此变量:

def min_odd(x):
min_v = float('inf')
for i in x:
if i % 2 != 0 and i < min_v:
min_v = i
return min_v

关于python - 如何使用列表中的函数获取最小奇数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52348491/

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