题解 | #修改属性1#

class Employee(object):
    def __init__(self, name, salary) -> None:
        self._name = name
        self._salary = salary
    
    def printclass(self, age=None):
        try:
            if age == None:
                raise Exception
            self._age = age
            print(f"{self._name}'salary is {self._salary}, and his age is {self._age}")
        except Exception as err:
            print('Error! No age')

name = input()
salary = input()
e = Employee(name=name, salary=salary)
e.printclass()
age = input()
e.printclass(age=age)


按题目要求在printclass中使用try...except
上面代码是通过属性传参来创建属性,也可以通过setattr来创建属性
class Employee(object):
    def __init__(self, name, salary) -> None:
        self._name = name
        self._salary = salary

    def printclass(self):
        try:
            print(f"{self._name}'salary is {self._salary}, and his age is {self._age}")
        except Exception as err:
            print("Error! No age")


name = input()
salary = input()
e = Employee(name=name, salary=salary)
e.printclass()
age = input()
setattr(e, '_age', age)
e.printclass()


全部评论

相关推荐

无情咸鱼王的秋招日记之薛定谔的Offer:好拒信,偷了,希望有机会用到
点赞 评论 收藏
分享
11-01 20:03
已编辑
门头沟学院 算法工程师
Amazarashi66:这种也是幸存者偏差了,拿不到这个价的才是大多数
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务