自学是门手艺:学习class

手抄代码记录:类 class

from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"

# 写一个机器人生成程序,有机器人名称,有机器人生命期。
# 当创建对象,机器人数量就加1,当机器人运行超过100年的时候,就自动停机,

import datetime

class Golem:
    __population=0
    __life_span=100
    def __init__(self,name=None):
        self.name=name
        self.built_year = datetime.date.today().year
        self.__active=True
        Golem.__population+=1
    def sayhi(self):
        print(f'hi,{self.name}!')
    def cease(self):  #注消机器人操作,同时将机器人人口数减1.
        self.__active=False
        Golem.__population-=1
    def is_active(self):     #是否还需活着,如果超过10年,就注销生命cease。
        if datetime.date.today().year-self.built_year>=Golem.__life_span:
            self.cease
        return self.__active
    @property
    def population(self):
        return Golem.__population
    @population.setter
    def population(self,value):
        return Golem.__population(value)  #返回机器人总数
           

g=Golem('alon2')
g.sayhi()
setattr(Golem, 'population', 10000)
g.population

李笑来 自学是门手艺
https://github.com/selfteaching/the-craft-of-selfteaching

你可能感兴趣的:(自学是门手艺:学习class)