为了账号安全,请及时绑定邮箱和手机立即绑定

在列表中找到最大值的总和和位置

在列表中找到最大值的总和和位置

扬帆大鱼 2021-03-29 18:06:38
我想创建一个函数,该函数将在数字列表中打印总和和最大值的位置,但是我不确定该怎么做。 :我在询问类似问题时使用了一些代码。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个参数。谢谢你。
查看完整描述

3 回答

?
跃然一笑

TA贡献1826条经验 获得超6个赞

然后给它一个参数,或修改定义。

print maxvalpos([4, 2, 5, 10])

或者

def maxvalpos(*variables):


查看完整回答
反对 回复 2021-04-05
?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

执行此操作的pythonic方法:


my_list_sum=sum(my_list)

index_max=my_list.index(max(my_list))

这会找到列表的总和以及列表最大值的索引


但是代码中的问题是:您正在向该函数发送四个变量,并且只接收一个变量。为此,请使用:


maxvalpos([4,2,7,10])

这仅发送一个参数,即函数的列表


查看完整回答
反对 回复 2021-04-05
?
慕的地10843

TA贡献1785条经验 获得超8个赞

一种更简单的方法


>>> from operator import itemgetter

>>> maxpos, maxval = max(enumerate(my_list), key=itemgetter(1))

例如。


>>> max(enumerate([4, 2, 5, 10]), key=itemgetter(1))

(3, 10)


查看完整回答
反对 回复 2021-04-05
  • 3 回答
  • 0 关注
  • 267 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号