分配给列表功能不起作用

时间:2019-01-04 21:39:56

标签: python list average

我正在尝试解决一个简单的问题。输入三个数字,然后找到两个最大的平均值。

while True:
    try:
        n1 = int(input("Enter n1: "))
        n2 = int(input("Enter n2: "))
        n3 = int(input("Enter n3: "))
    except ValueError:
        print ("Enter an integer: ") 
        continue
    else:
        break
mylist = [n1,n2,n3]
mylist.remove(min(mylist))
print (float(sum(mylist))/2)

为什么这不起作用。如果我删除赋值n_avg并保留代码的最后两行,如下所示,它将起作用。有人可以解释为什么吗?

mylist.remove(min(mylist))
print (float(sum(mylist))/2)

1 个答案:

答案 0 :(得分:0)

我想分享一个更简洁的代码。

mylist = []
while len(mylist) < 3:
    try:
        mylist.append(int(input("Enter a number:")))
    except ValueError:
        print ("Please enter an integer") 

mylist.remove(min(mylist))
print (sum(mylist)/2.)

按预期工作。