python对class按照某一属性取最大
时间: 2023-08-06 14:07:06 浏览: 75
对python 中class与变量的使用方法详解
5星 · 资源好评率100%
你可以使用Python内置的`max()`函数结合`key`参数来实现按照某一属性取最大。具体做法是:
1. 定义一个类,包含需要比较的属性;
2. 创建类的实例列表;
3. 使用`max()`函数,设置`key`参数为需要比较的属性,从实例列表中取出最大值。
举个例子,我们定义一个`Person`类,包含`name`和`age`两个属性:
```python
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
```
然后创建一个`Person`实例列表:
```python
people = [
Person('Alice', 25),
Person('Bob', 30),
Person('Charlie', 20)
]
```
接下来,我们可以按照`age`属性取出最大值,代码如下:
```python
oldest_person = max(people, key=lambda person: person.age)
print(oldest_person.name) # 输出: 'Bob'
```
这里使用了`lambda`表达式作为`key`参数,表示按照`person`对象的`age`属性进行比较。输出结果为`'Bob'`,因为`Bob`的年龄最大。
阅读全文