python:类和对象(3)

组合:

class Turtle:
    def __init__(self, x):
        self.num = x

class Fish:
    def __init__(self, x):
        self.num = x

class Pool:
    def __init__(self, x, y):
        self.turtle = Turtle(x)
        self.fish = Fish(y)

    def print_num(self):
        print("水池里总共有乌龟 %d 只,小鱼 %d 条!" % (self.turtle.num, self.fish.num))

 

类、类对象、实例对象

观察一下代码:

对象属性会覆盖对象方法,注意观察如下内容:

什么是绑定?

python要求方法有实例才会被调用,观察一下代码:

没有self,实例对象是不能调用方法的

 

注意以上代码,x y在实例对象里有值,在类对象里没有值

观察一下代码:删除CC类,不能新的实例化,但是已经创建的实例对象还是可以使用,应为已在内存中

 

 

类的一些BIF:

issubclass:

 

isinstance(object,classinfo)

如果第一个参数不是对象,则永远返回False

如果第二个参数不是类,则抛出异常

 

hasattr(object,name)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值