博客
关于我
python3面向对象--python3中类方法的特殊性与self
阅读量:611 次
发布时间:2019-03-12

本文共 547 字,大约阅读时间需要 1 分钟。

类方法的特殊性

在面向对象编程的语言中,类方法的定义通常遵循特定的规则。而在Python中,这些规则与其他语言有所不同,值得特别关注。

类方法的定义在Python中必须包含参数self,并且它是参数列表中的第一个参数。self表示类实例,与Java中的this概念相似。尽管self不是限定关键字,但在Python中习惯上统一使用self作为参数名。

例如,在类Persion中:

class Persion:    def sayHello(self):        print("hello world!")    persison2 = Persion()    persion2.sayHello()  # 正确调用方式

如果方法定义不包含self参数,即使在调用时传递参数,也会导致错误:

def sayHello():    print("hello world!")persion2 = Persion()persion2.sayHello()  # 会抛出TypeError:sayHello() takes 0 positional arguments but 1 was given

因此,在定义类方法时,必须将self作为第一个参数,正确地将实例作为方法的第一参数传递。

转载地址:http://hbtxz.baihongyu.com/

你可能感兴趣的文章
ospf综合实验2 2012/9/8
查看>>
OSPF规划两大模型:双塔奇兵、犬牙交错
查看>>
OSPF认证
查看>>
OSPF设计原则,命令以H3C为例
查看>>
OSPF路由协议配置
查看>>
OSPRay 开源项目教程
查看>>
VC++实现应用程序对插件的支持
查看>>
OSS 访问图片资源报“No ‘Access-Control-Allow-Origin‘”的错误
查看>>
ossfs常见配置错误
查看>>
Ossim4系统故障处理
查看>>
Spring赌上未来:响应式的 WebFlux 框架更优雅,性能更强!
查看>>
oss报UnknownHost,k8s设置hostAliases参数
查看>>
OSS报错The difference between the request time and the current time is too large
查看>>
OSS直传与UXCore-Uploader实践
查看>>
OS模块
查看>>
OS第1章
查看>>
OS第2章 —— 进程
查看>>
OS第3章 —— 进程调度和死锁
查看>>
OS第5章
查看>>
OS第6章 —— 设备管理
查看>>