[英]Creating a max function from scratch (python)
因此,我正在尝试创建一个从头开始确定一组值的最大值的函数。
我不确定在找到新的Max后如何使函数更改Max的新值,也不确定我的args用法是否正确。
def Maximum(*args):
Max = 0
for item in List:
if item > Max:
item = Max
return Max
List = [1,5,8,77,24,95]
maxList = Maximum(List)
print str(maxList)
任何帮助将不胜感激。
您已经倒退了一行代码。 您的if语句有效地表明,如果item大于Max,请将item设置为Max。 您需要翻转一下,以说如果item大于Max,请将Max设置为item。
if item > Max:
Max = item
return Max
另外,我不是Python方面的专家,但是我认为您需要在函数内部更改List以匹配参数名称,在这种情况下为args。
* args =参数列表-作为位置参数
您在此处传递列表作为参数。 因此,您的代码应如下所示-
def maximum(nums):
Max = 0
for item in nums:
if item > Max:
Max=item
return Max
List = [1,5,8,77,24,95]
print maximum(List)
这将为您提供结果:95。
另一方面,您可以使用内置的最大值函数来获取列表中的最大值。
print max(List)
使用reduce():
Python 2
def Maximum(data):
return reduce(lambda x, y: x if x > y else y, data)
在Python 3中,添加
from functools import reduce
输出:
print(Maximum([4, 8, 4, 19, -1]))
19
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.