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

Python 2 Max函数

Python 2 Max函数

慕沐林林 2021-05-10 09:14:46
这是我的代码def max_array_diff(line):    return max(line)line = raw_input().split()print max_array_diff(line)print line这是我得到的输出9['1', '9', '2', '-7', '10', '4', '3']我需要输出为10。raw_input()作为字符串输入,我已将其转换为列表,并试图从中获取最大值,但它始终返回9而不是10。我在做什么错?
查看完整描述

3 回答

?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

分割输入后,应将输入转换为整数。否则,您将使用进行字符串比较max()

改变:

line = raw_input().split()

至:

line = map(int, raw_input().split())

另外,您可以指定int作为key函数,max()以便根据字符串输入的整数值进行比较。

改变:

return max(line)

至:

return max(line, key=int)


查看完整回答
反对 回复 2021-05-18
?
万千封印

TA贡献1891条经验 获得超3个赞

您需要执行整数比较而不是字符串比较:


def max_array_diff(line):

    return max(line)


line = [int(x) for x in raw_input().split()]

print max_array_diff(line)

print line


查看完整回答
反对 回复 2021-05-18
?
HUH函数

TA贡献1836条经验 获得超4个赞

或另一种方法是:

print(sorted(raw_input().split(),key=int))

要获得最高的成就,请执行以下操作:

print(sorted(raw_input().split(),key=int)[0])

要获得前三名:

print(sorted(raw_input().split(),key=int)[:3])


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

添加回答

举报

0/150
提交
取消
微信客服

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

帮助反馈 APP下载

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

公众号

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