理论教育 Python计算思维:对象列表与lambda表达式

Python计算思维:对象列表与lambda表达式

时间:2023-11-22 理论教育 版权反馈
【摘要】:Python通过在列表的sort方法中使用关键字key配合lambda表达式来实现,其格式为:视频讲解:对象列表基础key=lambda对象:对象.属性例如,对上述学生组成的列表L,要使用学生的总成绩,按逆序的方式排序,则程序语句为:>>>L.sort上述语句中,lambda为关键字,obj是列表中的一个对象,obj.tot意思是采用对象的tot属性进行排序。请注意,lambda后面的对象名字符合标识符的定义即可。>>>L.sort视频讲解:对象列表例子—数据分拣

Python计算思维:对象列表与lambda表达式

程序:学生列表对象

视频讲解:对象列表排序

当列表中的元素为对象时,称为对象列表,例如有Student类:

这是一个选取了学号、姓名及数学物理、计算机三门课程成绩、总分及平均值属性的学生类,设形成了如下的列表:

s1=Student(ˈ1200001ˈ,ˈ王强ˈ,100,70,90)

s2=Student(ˈ1200003ˈ,ˈ张强ˈ,81,78,76)

s3=Student(ˈ1200002ˈ,ˈ丛锐ˈ,87,90,92)

L=[s1,s2,s3]

注意此时L的排序就会有多种选择!可以选择学号,可以选姓名,也可以选择任意一门成绩,这样的一些需求,应该如何实现?(www.daowen.com)

Python通过在列表的sort方法中使用关键字key配合lambda表达式来实现,其格式为:

视频讲解:对象列表基础

key=lambda对象:对象.属性

例如,对上述学生组成的列表L,要使用学生的总成绩,按逆序的方式排序,则程序语句为:

>>>L.sort(key=lambda obj:obj.tot,reverse=True)

上述语句中,lambda为关键字,obj是列表中的一个对象,obj.tot意思是采用对象的tot属性进行排序。请注意,lambda后面的对象名字符合标识符的定义即可。例如,也可以用student。

>>>L.sort(key=lambda student:student.tot,reverse=True)

视频讲解:对象列表例子—数据分拣

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈