求教,关于本题使用python的max函数的疑惑
查看原帖
求教,关于本题使用python的max函数的疑惑
1170758
Coicce楼主2023/11/1 20:34
i = 1
dic = {}
c = 0
while i <= 7:
    a,b = map(int,input().split())
    dic[i] = a + b
    i = i + 1
    if (a + b) > 8:
        c = 1
if c == 1:
    print(max(dic, key=dic.get(i)))
else :
    print('0')

我这样写的时候,对于例子,返回的总是7。 但当我改成

i = 1
dic = {}
c = 0
while i <= 7:
    a,b = map(int,input().split())
    dic[i] = a + b
    i = i + 1
    if (a + b) > 8:
        c = 1
if c == 1:
    print(max(dic, key=lambda k: dic[k]))
else :
    print('0')

的时候,输入就没有问题了。

可是我在网上看的时候,这样应该是可以返回最大的键的值的,就算不能返回,为什么返回的是7呢? 求大佬解答一下。

2023/11/1 20:34
加载中...