定义一个函数来查找lis中的最大数

2024-10-01 07:34:05 发布

您现在位置:Python中文网/ 问答频道 /正文

def maximum(l,n):
    maximum=l[0]
    for i in range(1,n+1):
        if (l[i]>maximum):
              max=l[i]

返回最大值

l=[]

^{pr2}$

这是密码员…你能告诉我哪里错了吗??在


Tags: inforifdefrangemaxmaximumpr2
3条回答

试试这个。lgt=max(l)和{}应该在for循环之外。在

n=input("Enter size of list")
my_list=[]
for i in range(0,n):
    num=input("Enter elements")
    l.append(num)
lgt=max(my_list)
print 'largest number is',lgt

现在不使用max()我想您可以尝试下面的代码。在

^{pr2}$

现在,如果您想使用maximum函数,请尝试以下代码。在

def maximum(x):
    x.sort()
    return x[-1]

n=input("Enter size of list")
my_list=[]
for i in range(0,n):
    num=input("Enter elements")
    my_list.append(num)
print "The largest number is",maximum(my_list)

在这条线上

lgt=maximum(l,n)

传递n,它的长度必须是列表l。但是,在迭代过程中,列表的长度小于finaln。所以,你会得到一个IndexError

您不需要自己实现maximum函数,因为python内置了^{}

所以,这样做:

^{pr2}$

在Python中,不需要知道要在其上循环的列表的长度:

def maximum(some_list):
   maximum = 0
   for i in some_list:
      if i > maximum:
         maximum = i
   return maximum

另外,不要使用max作为变量名,因为这是Python中内置函数的名称。l也是一个错误的变量名,因为它在某些字体中看起来像1。在

您也不需要提前询问列表的长度:

^{pr2}$

相关问题 更多 >