python中的类中属性元素加self.和不加self.的区

如果不加self,表示是类的一个属性(可以通过“类名.变量名”的方式引用),加了表示是类的实例的一个属性(可以通过“实例名.变量名”的方式引用)。

比如:

In [17]: class Test(object):
   ....:     val = 1
   ....:
   ....:     def __init__(self):
   ....:         self.val = 2
   ....:
   ....:

In [18]: test = Test()

In [19]: test.val
Out[19]: 2

In [20]: Test.val
Out[20]: 1
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: selfPython实例方法的一个特殊参数,代表当前对象实例本身。在方法,通过self可以访问对象实例属性方法,也可以调用其他的实例方法self方法是必须存在的,它是Python面向对象编程的重要概念之一。 ### 回答2: 在Python方法self代表当前对象实例本身。self可以用来访问对象的属性方法,并且必须作为第一个参数传递给方法。 通过self,我们可以在方法访问和操作对象的属性。例如,假设我们有一个名为"Person"的有一个属性"age": ``` class Person: def __init__(self, age): self.age = age def increase_age(self, years): self.age += years ``` 在这个例子,我们定义了一个方法increase_age,它接受一个参数"years"并将其与对象的年龄属性self.age表示当前对象实例的年龄属性。 当我们创建一个"Person"对象后,我们可以调用increase_age方法来增对象的年龄: ``` john = Person(25) print(john.age) # 输出:25 john.increase_age(5) print(john.age) # 输出:30 ``` 这里,我们创建了一个名为"john"的Person对象,初始年龄为25。然后,我们调用increase_age方法,并传递参数5来增对象的年龄。通过使用self.age,increase_age方法可以访问和修改对象的年龄属性。最后,我们打印对象的年龄属性,输出为30。 ### 回答3: 在Python方法self是一个特殊的参数,它代表了实例本身。通过使用self,我们可以在方法访问实例属性和调用其他方法。 首先,self可以用于访问实例属性。在初始化方法,我们通常会将属性绑定到self上,这样其他方法就可以通过self来访问这些属性。例如,如果一个有一个属性name,我们可以通过self.name来访问它。 其次,self还可以用于调用其他方法。在一个方法,如果我们想调用同一个的另一个方法,我们也需要使用self来引用该方法。这样我们可以在方法之间进行数据和逻辑的共享。例如,如果一个有两个方法,分别是方法A和方法B,我们可以通过self.A()来调用方法A。 需要注意的是,self并不是一个关键字,它只是一个命名约定。实际上,我们可以使用任意名称来作为self的参数名,但是为了保持代码的可读性和一致性,通常都使用self作为参数名。 总而言之,selfPython方法是一个重要的概念,它代表了实例本身。通过self,我们可以访问实例属性和调用其他方法,从而实现的功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值