分享个书上看到的知识,欢迎加好友,一起学习,找志同道合的伙伴
Topic source自己把a、c打印出来看一下就知道了
a=sorted(a,key=add) #这是把a这个list里面的元素按照add这个方法(上面定义的)进行归类后排序,输出结果是[165, 170, 177, 158, 159, 191, 181, 182, 190],其中165, 170, 177是中等,158, 159是矮,191, 181, 182, 190是高
c=love(a,key=add) #同理,这是把a这个list里面的元素按照add这个方法进行分组
能解释下
a=sorted(a,key=add)
c=love(a,key=add)
这两句怎么执行的嘛?谢谢
- 1
- 2
真诚的刘海柱
from itertools import groupby as love #导入函数groupby 指定别名 love
def add(x): #定义一个函数
if x > 180:
return '高'
elif x < 160:
return '矮'
else:
return '中等'
a=[191,158,159,165,170,177,181,182,190] #创建一个列表
a=sorted(a,key=add) #排序列表
c=love(a,key=add) #创建迭代器
for x,y in c:
print(x)
print(list(y))
输出结果
中等
[165, 170, 177]
矮
[158, 159]
高
[191, 181, 182, 190]