python编写迭代函数 python迭代器用法( 三 )


在python中,迭代式也可以是递归的调用,下面给你举个例子:
def f(n):
if n == 0 or n == 1 or n == 2: return 1
else: return f(n-1) + f(n-2)
这就是一个简单的第n项斐波那契数的求法 , 这里就用的是迭代式 。另外的例子就是牛顿迭代法,采用逐次渐进的效果求出n的开方数,下面是例子:
def f(guess):
return guess ** 2
def fd(guess):
return 2 * guess
def SquareRootNR(x,epsilon):
guess = x / 2.0
diff = f(guess) - x
ctr = 1
while abs(diff)epsilon and ctr = 100:
guess = guess - diff / fd(guess)
diff = f(guess) - x
ctr += 1 。
Python中的迭代器与可迭代:iter()和next() 一种自动迭代的更优雅的实现是使用 for循环
在Python中 , 迭代器(Iterator)和可迭代(iterable)的区别是 , 迭代器支持 iter ()和 next ()方法;可迭代支持 iter ()方法 。可迭代只能在for循环中获得元素,迭代器还可以用next()方法获取元素 。
list/truple/map/dict都是可迭代,但不是迭代器;这些数据的大小是确定的;迭代器不是,迭代器不知道要执行多少次,所以可以理解为不知道有多少个元素,每调用一次next() , 就会往下走一步 。
凡是可以for循环的,都是Iterable
凡是可以next()的,都是Iterator
【python编写迭代函数 python迭代器用法】关于python编写迭代函数和python迭代器用法的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

推荐阅读