Python3.x版本中 斐波那契数列, a,b = 0,1 怎么写,python3.x斐波那契,class Fib(ob
Python3.x版本中 斐波那契数列, a,b = 0,1 怎么写,python3.x斐波那契,class Fib(ob
class Fib(object):
def __getitem__(self, n): a, b = 0, 1 for x in range(n): a, b = b, a + b return a
f = Fib()
f[0] = 0
不解为什么是f[0] = 0
函数是不是直接执行Return 再回到循环体?
初学者还有很多不懂,请多指教,谢谢
f[0]的话,即 n = 0
for x in range(n): a, b = b, a + b
循环体就直接return了啊,所以是a没变还是0啊。
在用下标取值符[]的时候,程序会去访问对象的__getitem__函数。
f[0] 相当于 f.__getitem__(self, 0) ,n赋值为0
a = 0, b = 1for x in range(0): # 这里range(0) 直接跳过 a, b = b, a + breturn a # a = 0
所以f[0] = 0。
不知道怎么回事,就一步一步调试,查文档。
编橙之家文章,
相关内容
- Python请问云平台不支持写操作图片无法保存,base64报错要
- python multiarray 模块问题,pythonmultiarray,Traceback (m
- Python lambada与一般函数定义优略有哪些对比性,pythonl
- 有哪位大神知道Yosemite DP7 pip install mysql-python失败原因,
- 含有汉字的URL可以在nginx上做统一转换吗?,urlnginx,在自
- 保存多用户信息用python哪种数据类型适合,多用户pyt
- python数据库与返回 json 之间的实现,pythonjson,新手,打
- Python科学计算为目标学习路线应该怎么走,python科学计
- django如何从request里面获取发送的websocket数据?,djang
- Python元类新手应该如何理解,python元类新手,class Setti
评论关闭