一、概念
1、静态方法和类方法:如果类中需要非该类成员存在,则使用静态方法调用。
例题:输入四条边,判断是否是正方形,如果是求出正方形的面积
解答:
2、类方法:获取自身类(cls)中的属性,并且可以更改.classmethod 修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等
例题:数字时钟
解答:
二、类的应用
1、列表生成式
a = (x for x in range(100000000000) if x % 2== 0)
for i in range(100):
print(next(a))
列表生成式
a = [x for x in range(100000000000) if x % 2== 0]
优点: 计算速度快,因为一次性已经全部加载到内存中了,适合数据量不是太大的情况10000- 2000-
缺点: 占用内存
生成器
a = (x for x in range(100000000000) if x % 2== 0)
优点: 节约内存空间
缺点: 计算速度慢,因为要生成.
2、装饰器
def Joker(func):
def warp(n1,n2,n3):
num = n1 + n2
return func(0,num,n3)
return warp
装饰器将前两个数字求和,函数本身第三个参数乘上这个和
@Joker
def SUM(num1,num2,num3):
print(num1,num2,num3)
print(num2 * num3)
SUM(10,2,3)
三、习题练习
1、问
1、答
2、问:创建一个父类、子类,父类计算两个参数的和,子类打印这个结果
2、答