当前位置: 首页 > news >正文

Python类基本知识

一,Python类定义,语法格式如下:

class ClassName:<statement-1>...<statement-N>

二,类的继承

1,单父类继承
Python 同样支持类的继承,派生类的定义如下所示,
例如如下DerivedClassName继承父类BaseClassName

class DerivedClassName(BaseClassName):<statement-1>...<statement-N>

BaseClassName(实例中的基类名)必须与派生类定义在一个作用域内。除了类,还可以用表达式,基类定义在另一个模块中时这一点非常有用例如继承另一个模块中的类 modname.BaseClassName

class DerivedClassName(modname.BaseClassName):<statement-1>...<statement-N>

2,多父类继承
Python同样有限的支持多继承形式。多继承的类定义形如下例:
例如如下DerivedClassName继承三个父类Base1, Base2, Base3

class DerivedClassName(Base1, Base2, Base3):<statement-1>...<statement-N>

三,Python类的私有属性

1,公有属性
非双下划线开头定义的类属性,即为公有属性,外部可以访问,obj.attName;

2,私有属性
__private_attrs两个下划线开头,声明该属性为私有,不能在类的外部被使用或直接访问。在类内部的方法中使用时 self.__private_attrs
 

四,Python类方法

1,Python类的公有方法
在类的内部,使用 def 关键字来定义一个方法,与一般函数定义不同,类方法必须包含参数 self,
且必须为第一个参数,self 代表的是类的实例,而非类
self 的名字并不是规定死的,也可以使用 this,但是最好还是按照约定使用 self。


2,Python类的私有方法
__private_method两个下划线开头,声明该方法为私有方法,只能在类的内部调用 ,不能在类的外部调用self.__private_methods


3,Python类的专有方法:
__init__ : 构造函数,在生成对象时调用
__del__ : 析构函数,释放对象时使用
__repr__ : 打印,转换
__setitem__ : 按照索引赋值
__getitem__: 按照索引获取值
__len__: 获得长度
__cmp__: 比较运算
__call__: 函数调用
__add__: 加运算
__sub__: 减运算
__mul__: 乘运算
__truediv__: 除运算
__mod__: 求余运算
__pow__:乘方

欢迎拍砖讨论...


http://www.mrgr.cn/news/47461.html

相关文章:

  • 点赞系统设计(微服务)
  • Java实用办公小程序
  • RK3588上CPU和GPU算力以及opencv resize的性能对比测试
  • 人工智能学习路线全链路解析
  • poi处理多选框进行勾选操作下载word以及多word文件压缩
  • Spring Web 嵌套对象校验失效
  • 联软安全助手卸载 UniAccess Agent,最简单的方法,两步解决!!!
  • C语言从头学67——学习头文件stddef.h和stdbool.h
  • 挑战高薪职位--全面掌握Oracle数据库:从入门到实战高薪技能(11g至19c)
  • 10.10今日错题解析(软考)
  • 爸妈总说着学门技术,学机器视觉技术确实是一条踏实的生活道路,这条路你走得下去走得通吗?
  • ubuntu 18.04虚拟机以太网网段与地平线J6板端连接配置
  • 排序算法——归并排序
  • Lumerical——光源(Sources)
  • 40亿个QQ号,限制1G内存,如何去重?
  • Python内置函数
  • 机器学习:序列模式算法的原理、应用场景及优缺点介绍
  • opencv的相机标定与姿态解算
  • uniapp 省、市、区、乡镇 数据层级选择插件 Ba-DataPicker
  • 【工具使用】使用Docsify搭建个人文档网站
  • 【电路笔记】-求和运算放大器
  • CSS中Float(浮动)详解
  • Guava 用法指南
  • Java控制流 小案例
  • IFAdapter:用于基础文本到图像生成的实例特征控制
  • 用IntStream生成0到n的流,并找出不在numSet中的数字列表