python中的初始化属性和实例属性

先来看一段代码示例

class PoloBlog:
    def __init__(self,name): #初始化属性
        print("自动调用构造方法")
        # 定义一个实例属性
        self.name = name
        # 定义一个实例属性
        self.age = 18
    def na(self):
        print(self.name,self.age)

blog = PoloBlog("欧阳")
blog.na()#输出结果:欧阳 18
  1. 第一个构造方法__init__中的name就是初始化的实例属性,会打印出第三行内容,并且将name赋值给第四行的 self.name (实例属性)
  2. 实例方法 na是类中的一个普通方法,它接受一个参数 self,表示对类实例的引用。在该方法中,会打印出 self.name和self.age实例属性的值。
  3. 通过PoloBlog创造一个实例,将"欧阳"传入构造方法的“name”中,既PoloBlog("欧阳")赋值给blog。
  4. 最后通过blog.na(),调用了实例方法,输入了“name”和”age“的值。

初始化属性和实例属性

  1. 当创建一个类的实例时,Python会自动调用__init__(构造方法)来初始化实例,在构造方法中可以定义初始化属性和实例属性。
  2. 初始化属性是类的属性,在构造方法中定义并赋于初始值。它们在每次创建类的实例时都会被初始化,并且对于所有实例来说是相同的。
  3. 上述代码中,name是初始化属性,age因为是在构造方法外被定义的,所以是实例属性,并且它的初始值是18。
  4. 修改构造方法外创建的实例属性的值。
blog = PoloBlog("欧阳")
blog2 = PoloBlog("欧阳")
blog.na()  # 输出结果:欧阳 18
blog.age = 20
blog.na()  # 输出结果:欧阳 20
blog2.na() # 输出结果:欧阳 18

修改了实例属性age的值为20,blog2”age“属性的值仍然保持为18,说明实例属性和特定的实力相关的,每个实力可以独立修改并且访问。

总结一下,初始化属性在构造方法中定义并初始化,对于每个实例都是相同的。实例属性是与特定实例相关联的属性,每个实例都可以独立地创建、修改和访问它们。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值