#输入列表a(或其他可迭代的序列或集合),y(阈值)
#输出计数和百分比
def LowerCount(a,b):
num = 0
for i in a:
if i<b: #可依需要修改条件
num+=1
percent = num/len(a)
return num,percent
#调用
LowerCount(alist,80)
#或者,简短的:
len([i for i in alist if i > 80])
#又或者,简短的:
sum(i>80 for i in alist)
进一步的:
#输入data(可迭代的序列或集合),number(阈值),operator(运算符’<’、>’、’=’)
#输出计数和百分比
def OperCount(data,number,operator): #compelete with a number
num = 0
if operator == '>':
for i in data:
if i > number:
num+=1
elif operator == '<':
for i in data:
if i < number:
num+=1
elif operator == '=':
for i in data:
if i == number:
num+=1
else:
print('something wrong!')
percent = num/len(data)
return num,percent
#调用
OperCount(alist,80,'<')
暂时搞不懂如何将运算符直接作为参数传递,以上就是个简单的循环,总觉得这样的运算应该有简单粗暴的函数直接使用的,然而找的时间还不如写的快= =如果你都看到我写的了,赶紧别找了哈哈哈哈(不过以防万一:找到的铁子请留言曝光那个函数!!)