Skip to main content
 首页 » 编程设计

python之我正在尝试简化我的代码,但答案是错误的

2025年05月04日9yjmyzz

这是我的代码(没错):

 if __name__ == '__main__': 
    n = int(input()) 
    arr = map(int, input().split()) 
    l = list(set(sorted(arr))) 
    l.remove(max(l)) 
    print(max(l)) 

但我想这样做(pythonic):

if __name__ == '__main__': 
    n = int(input()) 
    arr = map(int, input().split()) 
    l = list(set(sorted(arr))) 
    print(l.remove(max(l))) 

所以..当我这样做时,我的代码只打印:

print(l.remove(max(l)))

None

有什么问题?我只想简化我的代码。

任务:我有一个列表,我想打印第二个最高分。

请您参考如下方法:

看看 documentation . list.remove 方法是一种就地 修改列表的方法。也就是说,它会修改您调用它的列表,而不是返回一个包含您想要的更改的新列表。

由于此函数不返回任何内容,因此打印 l.remove() 会得到“None”。要打印删除元素的列表,您必须坚持使用原始代码。