1、基础语法
2、数据相关
数据类型(记住每种数据类型到底用来记录什么状态)
每种数据类型相关的内置方法(优先掌握、需要掌握、了解)
文件处理
回收资源
f=open('a.txt',mode='rt',encoding='utf-8') f.close() print(f) with open(...) as f1,open(...) as f2: pass
文件指针移动到末尾:
f.seek(0,2)
3、函数:函数就是实现某一功能的工具
函数的基本使用(原则:先定义、后调用)
定义阶段发生什么事:只检测语法,不执行代码
def login(): # login=函数的内存地址 代码1 代码2 代码3 print(login)
调用阶段发生什么事:执行函数体代码
login()
函数参数
位置参数 位置形参 def func(x,y,z): pass 位置实参 func(1,2,3) 关键字 func(z=3,y=2,x=1) 默认形参 def register(name,sex='male'): pass 可变长参数 * def func(x,*args): #args=(2,3,4,5) pass func(1,2,3,4,5) ** def index(x,y,z): pass def wrapper(*args,**kwargs): #args=(1,2,3,4) kwargs={'a':1,'b':2} index(*args,**kwargs) # index(*(1,2,3,4),**{'a':1,'b':2}===>index(1,2,3,4,a=1,b=2) wrapper(1,2,z=3)
名称空间与作用域
闭包函数
装饰器
迭代器
生成器
三元表达式、列表生成式、字典生成式
匿名函数与内置函数
递归
4、面向对象 面向对象的核心是对象二字,对象(对象就是容器、箱子)的精髓在于“整合”
面向过程编程思想: 核心是 过程 二字, 过程指的是解决问题的步骤是,即先干什么再干什么。
基于该编程思想编写程序,相当于一条流水线,一种机械式的思维方式。
面向对象编程思想: 核心是 对象 二字,对象指的是数据与方法的结合体。也就是一个容器。
基于该编程思想编写程序,就好比创造世界,一种上帝式的思维方式。
一 类与对象 对象是特征与技能结合体,即数据与方法。 类是一系列对象相似的特征与技能的结合体,即相似的数据与方法。 二 面向对象三大特性 封装: 把一堆数据属性与方法属性 整合 到对象里面。 隐藏: __属性 ---> 把属性变形了,即隐藏起来了! 继承: 父类是一些列类共有的数据属性与方法属性的结合体。 子类可以继承父类的属性,还可以派生出自己独有的属性。 组合: 1.即继承父类的属性,且不与父类耦合到一起。 2.把一个对象放到另一个对象里面。 组合是继承的一种应用。 多态: 1.抽象类 2.鸭子类型 三 对象的绑定方法 给对象用的,由对象来调用,会自动把对象本身当作第一个参数传给self。 四 classmethod、staticmethod、property classmethod本质上是一个装饰器,装饰给类里面的方法。 被装饰的方法,即类的绑定绑法。 五 组合 六 面向对象高级 1、反射: 通过 字符串 来操作类与对象的属性。 hasattr() 判断对象或者类的属性是否存在! getattr() 获取对象或者类的属性 参数1: 对象 参数2: '属性名' 参数3: 默认值 setattr() 设置对象或者类的属性 delattr() 删除对象或者类的属性 2、类的内置方法 __init__(): 调用类的时候自动触发__init__。 __str__(): 打印对象的时候触发此方法。 (此方法内,必须return一个字符串) __del__(): 在对象 占用空间被清掉了,会自动触发__del__方法的执行。 __setattr__(): 修改对象的属性会自动触发此方法的执行。 __deleter__: 删除属性的时候会自动触发。 __call__: 调用对象的时候会自动触发。 元类的时候会有用!
5、模块与包