【发布时间】:2020-05-24 00:56:12
【问题描述】:
我已经定义了一个具有 name 和 age 属性的 python 类。我正在尝试打印此类中最古老和最长的对象名称。 最旧的工作正常,但要找到最长的名称,我不能使用 len() 和 max() 的一个函数,因为 len() 不接受多个参数。我必须先将名称长度定义为属性,然后再定义最大值。我的代码副本如下。感谢您的帮助:)
class NewClass:
def __init__(self, name, age):
self.name = name
self.age = age
self.length = len(name)
def Oldest(*args):
return max(args)
# def Longets(*args): this doesn't work since len takes one argument only
# return max(len(args))
def Longest(*args):
return max(args)
person1 = NewClass('Cindy', 24)
person2 = NewClass('Amy', 28)
person3 = NewClass('fifififi', 27)
print(f'The oldest person is {Oldest(person1.age,person2.age,person3.age)} years old')
print(f'longest name has {Longest(person1.length,person2.length,person3.length)} character')
【问题讨论】:
标签: python