python_09 类

类(使用类完成比较复杂的工作)

In [1]:class Person:
    
    def __init__(self, name, age):   #__xx__魔法函数--初始化函数,self:如果类生成了一个对象,那么self指的类本身
        self._name = name            # self._name为每个实例化属性
        self._age  = age           
    
    def get_name(self):       #self指的是每个实例化对象它本身,函数中可以添加属性
        return self._name
    
    def rename(self, new_name):
        self._name = new_name

初始化函数中,self后面的是实例化对象的属性,加下划线的意思是,代表这个属性是私有的,不应该访问

In [2]: s = 'hello world'

          s.center(12)   #s调用center时,传给函数时会有self这样一个对象,指向其本身

Out [2]: 'hello world '

In [3]:p = Person('jin', 12)

In [4]:p.get_name()

Out [4]: 'jin'

In [5]: p.rename('ming')

In [6]: p.get_name()

Out [6]: 'ming'

# pass 代表什么都不做,只是占位

In [7]: class Student(Person): #继承类

            pass
In [8]: s = Student('yue', 26)
          s.get_name()

Out[8]: 'yue'

 

In [9]: class Student(Person): #继承类

           def set_score(self, score):    #增加Person类没有的一些方法
                  self._score = score     
    
           def get_score(self):
                  return self._score


In [10]: s = Student('yue', 26)
             s.get_name()

Out[8]: 'yue'

In [11]:s.set_score(98)

In [12]:s.get_score()

Out[12]: 98

 

In [13]:

class Person:
    def __init__(self, name, age):   #__xx__魔法函数--初始化函数,self:如果类生成了一个对象,那么self指的类本身
        self._name = name            # self._name为每个实例化属性
        self._age  = age     

    @property
    def name(self):       #get_name-->name 若想直接调用name,使用装饰器 @property
        return self._name

    def rename(self, new_name):
        self._name = new_name

In [14]:p = Person('lei', 22)
        p.name
Out[14]: 'lei'

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值