Python - 类方法、静态方法

  1. 类方法:仅涉及到类,而没用到实例的方法。
    用到了类cls的类中的方法
  2. 静态方法:与类有关系,但又不需要实例和类参与时,用到静态方法。
    静态方法相当于一个函数,可独立于类之外,但与类有一定联系,所以放到类的内部。
class Date(object):

    def __init__(self, day=0, month=0, year=0):
        self.day = day
        self.month = month
        self.year = year

    @classmethod
    def from_string(cls, date_as_string):#将字符串"day-month-year"转化成日期对象
        day, month, year = map(int, date_as_string.split('-'))
        date1 = cls(day, month, year)
        return date1

    @staticmethod
    def is_date_valid(date_as_string):#验证是否为有效日期
        day, month, year = map(int, date_as_string.split('-'))
        return day <= 31 and month <= 12 and year <= 3999

date2 = Date.from_string('11-09-2012')
is_date = Date.is_date_valid('11-09-2012')

猜你喜欢

转载自blog.csdn.net/weixin_39129504/article/details/82769334