首页 > 解决方案 > 使用此特定结构编写一段代码以返回列表的最大值时遇到问题

问题描述

我正在努力解决可能是一个相当简单的错误,但无论如何:问题要求使用以下结构的一段代码来返回列表的最大值。如果它真的很简单,我很抱歉,但我对此很陌生

max()不允许使用该功能

def lmax(lst):
    i=0
    val=0
    while i < len(lst):
        a=lst[i]
        if a>val:
            lst[i]=val
        i=i+1
    return val

无论列表输入如何,都只返回 0

标签: pythonmax

解决方案


问题是您将列表中的值设置为当前最大值lst[i]=val,而实际上您想保留它。我还通过使用for循环而不是while.

def lmax(lst):
    largest = lst[0]
    for current in lst:
        if current>largest:
            largest = current
    return largest

推荐阅读