python中classmethod和staticmethod

'''
classmethod与staticmetho都是python内置的装饰器.

classmethod:
    类的绑定方法,在类内部定义的方法中装饰.
    会将类作为第一个参数传入,由对象或类调用.
staticmethod:
    静态方法,在类内部定义的方法中装饰.
    被staticmethod装饰的方法就是一个普通的函数,不会传入任何默认参数,
    按照函数的调用规范使用.

'''
class User:
    def __init__(self, name, age):
        self.name = name
        self.age = age
        print('初始化成功')

    @classmethod
    def login(cls, user, pwd):
        if user == 'yyh' and pwd == '123':
            print('登录成功')
            return User('颜宇辉', 18)
        else:
            print('登录失败')


User.login('yyh', '123')

posted @ 2019-11-28 16:46  GhostAnt  阅读(125)  评论(0编辑  收藏  举报