为了账号安全,请及时绑定邮箱和手机立即绑定

为什么 self 是方法的必需参数?

为什么 self 是方法的必需参数?

Go
catspeake 2021-10-19 15:25:18
假设我有一个像这样的小代码:#!/usr/bin/env python3class Dog():  def __init__(self, name, age):    self.name = name    self.age = age  def sit(self):    print(self.name + " is now sitting.")my_dog = Dog('willie',6)my_dog.sit()据我了解,该行my_dog = Dog('willie',6)创建了一个名为my_dog. 它调用__init__函数,在内部将其转换为Dog.__init__(my_dog, willie, 6)并将my_dog.name和my_dog.age变量设置为willie和6? 现在my_dog.sit()执行时,为什么该方法sit()需要aself作为参数?是不是因为如果有同一个类的另一个实例(例如,your_dog),那么它知道使用your_dog.name而不是my_dog.name?
查看完整描述

3 回答

?
慕斯王

TA贡献1864条经验 获得超2个赞

Self 指的是调用该方法的实例。如果函数不需要 self,则意味着该函数不需要该特定类的实例来调用该方法。


查看完整回答
反对 回复 2021-10-19
  • 3 回答
  • 0 关注
  • 256 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信