Python 查找列表中最大值的总和和位置
我想创建一个函数,用于打印数字列表中最大值的和和和位置,但我不确定如何执行此操作。。这是我到目前为止开始做的: 我用了一些代码来回答一个类似的问题Python 查找列表中最大值的总和和位置,python,list,max,Python,List,Max,我想创建一个函数,用于打印数字列表中最大值的和和和位置,但我不确定如何执行此操作。。这是我到目前为止开始做的: 我用了一些代码来回答一个类似的问题 def maxvalpos(variables): max = 0 for i in range(len(variables)): if variables[i] > max: max = variables[i] maxIndex = i return
def maxvalpos(variables):
max = 0
for i in range(len(variables)):
if variables[i] > max:
max = variables[i]
maxIndex = i
return (max, maxIndex)
print maxvalpos(4, 2, 5, 10)
当我运行这段代码时,它只返回函数只能接受1个参数。谢谢。然后给它一个参数,或者修改定义
print maxvalpos([4, 2, 5, 10])
或
然后给它一个参数,或者修改定义
print maxvalpos([4, 2, 5, 10])
或
蟒蛇式的方法:
my_list_sum=sum(my_list)
index_max=my_list.index(max(my_list))
这将查找列表和列表最大值的索引之和
但代码中的问题是:向函数发送四个变量,而只接收一个变量。要使其起作用,请使用:
maxvalpos([4,2,7,10])
这只向函数发送一个参数,一个列表
my_list_sum=sum(my_list)
index_max=my_list.index(max(my_list))
这将查找列表和列表最大值的索引之和
但代码中的问题是:向函数发送四个变量,而只接收一个变量。要使其起作用,请使用:
maxvalpos([4,2,7,10])
这只向函数发送一个参数,即一个列表,这是一种更简单的方法
>>> from operator import itemgetter
>>> maxpos, maxval = max(enumerate(my_list), key=itemgetter(1))
例如
这是一种更简单的方法
>>> from operator import itemgetter
>>> maxpos, maxval = max(enumerate(my_list), key=itemgetter(1))
例如
您可能希望从
maxvalpos
返回一些内容,例如return(max,maxIndex)
您可能希望从maxvalpos
返回一些内容,例如return(max,maxIndex)
当我在print语句中放入[]括号时,它现在只返回无,您知道为什么吗?我假设这与我的代码有关,你永远不会从函数中返回任何内容。当我在print语句中放入[]括号时,它现在只返回None,你知道为什么吗?我假设这与我的代码有关你永远不会从函数中返回任何东西。