切片操作,截取子字符串
切片操作,截取子字符串
字符串是不可变的
a.replace()只能是字符串替换
input()
is比较两标识符引用对象的地址是否相同
==比较两标识符value值是否相同
time.time()
round()四舍五入函数
二进制0b
八进制0o
十六进制0x
标识符区分大小写
必须以下划线或字母开头
堆存放对象
栈里面变量引用对象
对象
每个py文件成为一个模块,python由许多模块组成。
注释多行用''' '''
\可以从下一行开始
mro()函数
python支持多继承,如果多个父类有相同名字的方法,在没有指定父类的时候,解释器将“从左到右”按顺序搜索
mro():方法解析顺序。我们可以通过mro()方法来获得“类的层次结构”,方法解析顺序也是按照这个累的层次结构寻找的
多重继承
一个子类可以有多个直接父类
好处:可以使我们类具备多个“父类”的特点
坏处:类的整体层次异常复杂,尽量避免使用
重写__str__()方法
object有一个__str__()方法,用于的返回一个对于“对象的描述”,对应于内置函数str()经常用于print()方法,帮助我们查看到对象的信息
object根类__dir__()
通过类的方法mro()或者类的属性_mor_可以输出这个类的继承层次结构
object类是所有类的父类,所有的类都有object类的属性和方法
类成员的继承和重写
1、成员继承:子类继承了父类除构造方法之外的所有成员
2、方法重写:子类可以重新定义父类的方法, 这样就覆盖父类的方法,也称为“重写”
1、继承
是代码复用的重要手段
一个子类可以继承多个父类
语法格式:
class 子类(父类):
类体
如果没有指定父类,默认父类是object类
object类是python里的一个类,object是所有类的父类,里面定义了一些多有类共有的默认属性,例如__new__()
面向对象的三大特征介绍
1、封装(隐藏)
隐藏对象的属性和实现细节,只对外提供必要的方法。通过“私有属性和私有方法”等方式来实现封装,没有严格的语法级别的“访问控制”,更多的是靠程序员的自觉实现
2、继承
让子类继承父类的特性,提高了代码的重用性,是一种增量进化
3、多态
同一个 方法调用由于对象不同会产生不同的行为。
@property装饰器
1、将一个方法的调用方式变成“属性调用”;
2、一般用来给我们的属性设置get和set方法;
当我们的属性可以直接被外部调用的时候,很容易出现录入错误数据并输出错误数据的现象
这个时候,为了解决这个问题,我们可以先将属性私有化
私有方法
在类内部调用自己的属性或方法,直接用self.__属性。