|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
问题:不能理解为什么类的意义,不能理解以下这段代码的意义,类和普通的函数又有什么区别呢?(如果不定义CLASS)
class Fib(object):
def __getitem__(self, n):
if isinstance(n, int): # n是索引
a, b = 1, 1
for x in range(n):
a, b = b, a + b
return a
if isinstance(n, slice): # n是切片
start = n.start
stop = n.stop
if start is None:
start = 0
a, b = 1, 1
L = []
for x in range(stop):
if x >= start:
L.append(a)
a, b = b, a + b
return L
类和普通的函数区别不大 比如说 int() str() set() dict() 也是类 还不是都被拿来当函数用的
类和普通的函数他们都有同样的泛型 typying.Callable ,基本的类实例化的时候可以包装对象 (字面量) 也就是{1,2,}和set([1,2])没区别
普通的函数也有类 是函数类实例化出来的
类也有类 类的类实例化也能诞生类
生成器类 这种类 并不是有个生成器类的类实例化出来 也不是继承生成器基类 而是属于一种泛型 只要实现了__iter__就算是生成器类 就是这个道理
|
|