所以我有以下代码
n = int(input())
arr = map(int, input().split())
numList = list(arr)
topNum = max(numList)
for i in numList:
if i == topNum:
del numList[numList.index(i)]
print(numList)
它需要以下输入
5
2 3 6 6 5
这个想法是删除所有出现的顶部数字,但我有一个错误,它只删除顶部数字一次。我已经检查过是否打印该数字,如果它等于顶部数字,并且在测试时打印了两次,所以我知道它与 if 语句和 for 循环无关,所以它一定与我的方式有关删除它?如果是这样,为什么尽管处于 for 循环中,它只删除一次。我知道它的意思是只删除第一次出现的情况,但这就是为什么我有 for 循环。
郎朗坤
相关分类