#!/bin/python
import sys
n = int(raw_input().strip())
myStick = [int(x) for x in raw_input().split()]
lilStick=0
count=-100
myStick=sorted(myStick)
while count <= len(myStick):
myStick = [x for x in myStick if x != lilStick]
lilStick= min(myStick)
myStick=sorted(myStick)
print len(myStick)
错误(stderr) 回溯(最近一次调用最后一次):文件&#34; solution.py&#34;,第13行,在lilStick = min(myStick)中ValueError:min()arg是一个空序列 谁能告诉我为什么我会这样做?
答案 0 :(得分:0)
由于lilStick= min(myStick)
,你使用min函数从空列表中获取最小值,这是不可能的。
所以你可以在此之前循环以更好地处理代码。
import sys
n = int(input().strip())
myStick = [int(x) for x in input().split()]
lilStick=0
count=-100
myStick=sorted(myStick)
while True:
myStick = [x for x in myStick if x != lilStick]
print ("Min",myStick)
if len(myStick) >0:
lilStick= min(myStick)
myStick=sorted(myStick)
print (len(myStick))
else:
break
阅读有关Operators和python循环的更多信息。
注意:将raw_input更改为输入,print语句的括号因为我检查了version 3.5.1
中的代码。希望您可以对version 2.7
进行更改。