Python 类代码编写基础
来源:互联网 发布:centos git 备份 编辑:程序博客网 时间:2024/06/11 22:41
构造函数
写过 c++/ java oop 编程语言的都知道,类编写离不开的就是构造函数
直接上代码
# 有别于其他语言 Object 在 Python 中是 objectclass abc(object): # 同时 Python 中的 __init__ 构造函数不能有多个,即 Python 函数不能被重载,永远只能存在一个 def __init__(self): # 无参构造方法 print(0) # 如果出现一个 __init__ 函数的参数数量是所有 __init__ 参数数量中最多的时候,该 __init__ 覆盖其他所有 def __init__(self, value): # 带一个参数的构造方法,会将第一种方法覆盖 print(value) # 解决方法也很简单,使用带默认值的参数 def __init__(self, a=1): # 如需带参数且需要保留无参构造,只能使用最后一种 print(a)if __name__ == '__main__': abc() abc(10)# 输出结果为110
类继承及私有属性与方法
# 类是模块中的属性class Abc: def __init__(self): self.__a = 1 # 私有属性 def __abc(self): # 私有方法 print(self.__a) @staticmethod def abc(): print('abc')class Bcd: @staticmethod def bcd(): print('bcd')# java 中是不存在多继承的,c++ 有多继承class Cde(Abc, Bcd): @staticmethod def cde(): print('cde') # 重写父类的方法 @staticmethod def bcd(): print('cde bcd')if __name__ == '__main__': a = Cde() a.abc() a.bcd() a.cde()# 输出结果abccde bcdcde
运算符重载
# 重载运算符class Abc(): def __init__(self, a): self.a = a def __add__(self, b): # 重载运算符加号,使他模拟字符串拼接,并返回 int 型的数 return int(str(self.a) + str(b.a)) def __and__(self, b): return 1 def __sub__(self, b): return Falseif __name__ == '__main__': print(Abc(1) + Abc(2)) print(Abc(1) - Abc(2))# 输出结果12False
@property 及 __str__
class Rec: def __init__(self): self.abc = 1 self.name = 'sdhjf' @property # 将该类方法转换成只读属性,同时具备了 getter def SetAndGetName(self): return self.name @SetAndGetName.setter # 重新实现 setter,该属性又通过这个修改器变为可写属性 def SetAndGetName(self, value): self._SetAndGetName = value def __str__(self): # 使一个类的实例为一个字符串 return str(self.abc) + ' ' + self.name # 抛弃默认实例if __name__ == '__main__': a = Rec() print(a) # 输出 1 sdhjf print(a.abc) # 输出 1 print(a.name) # 输出 sdhjf a.SetAndGetName = 'cbas' print(a.SetAndGetName)
阅读全文
1 0
- Python 类代码编写基础
- 编写代码的基础
- Python——类代码编写细节
- 编写python代码
- python编写hadoop代码
- 黑客软件编写基础代码大全
- 编写高质量代码基础
- 基础认证钓鱼代码编写
- 《Python学习手册》学习笔记(26)之第26章类代码编写基础(关键词:编程语言/Python/OOP/面向对象/类)
- 使用IDE编写python代码
- [零基础学python]编写类之三子类
- [零基础学python]编写类之一创建实例
- [零基础学python]编写类之二方法
- [零基础学python]编写类之二方法
- [零基础学python]编写类之四再论继承
- Python学习笔记(十六):类代码编写细节
- VC 黑客软件编写基础代码大全
- javascript基础:注释、代码位置、编写规则
- 第十五天
- VB中的val-SSD4
- linux查找日志技巧
- 写文件dat文件函数+另存为对话框使用+时间设定函数分析
- 调用系统相关功能
- Python 类代码编写基础
- AssetBundle资源包--1
- kafka常用命令
- 嵌入式linux下u盘自动挂载的实现
- MVC开发模式
- DPM(Deformable Parts Models)-----目标检测算法理解
- -mfloat-abi=softfp的问题,指定fpu为neon
- 四种常见的XML解析方式
- 函数的调用,栈帧的创建和销毁