实例化对象
- __ init __方法属于实例对象,也属于类方法.
- 类方法可以通过实例调用,也可以通过类对象调用,类方法中把self改为cls,并用@classmethod修饰.
- 静态方法:用@staticmethod修饰,基本是一个与本类无关的一些方法,一般为工具方法,调用与类方法相似.
- 实例方法:只能通过实例调用,类调用必须传递一个实例对象.
模块化
- 模块化其实就是一个完整的功能分解为一个一个的小模块(有点类似分布式).
- 优点:方便开发与维护;模块可以复用
模块
一个py文件就是一个模块
- 引入
- import 模块名(py文件)
- import 模块名 as 模块别名
- 模块名.属性/函数/类
- from 模块名 import 变量(方法/属性/类),变量… -->推荐使用
- from 模块名 import 变量 as 别名(解决主模块与引入模块之间重名问题)
扩展
列表推导式
旧的列表 --> 新的列表
- [变量 for 变量 in 旧列表]
- [变量 for 变量 in 旧列表 if 条件]
生成器
一边循环一边计算
- 列表推导式的中括号换成小括号即为生成器,使用迭代变量.next()方法与next(迭代变量)方法获取元素
r = (x * 3 for x in range(10))
print(next(r)) #print(r.__next__())
- 使用关键字yield(在函数中添加此关键字就变成一个生成器)
def f():
n = 0
while True:
n += 1
yield n #等于:return n + 暂停
n = f()
print(next(n))