反向迭代與實現

2021-10-25 07:35:07 字數 841 閱讀 2063

要求:實現乙個連續浮點數發生器floatrange,根據給定範圍和步進值產生一系列連續浮點數,如迭代floatrange(3.0,4.0,0.2)可產生序列:

正向:3.0,3.2,3.4,3.6,3.8,4.0

反向:4.0,3.8,3.6,3.4,3.2,3.0

class

floatrange

:def

__init__

(self, start, end, step=

0.1)

: self.start = start

self.end = end

self.step = step

# 正向

def__iter__

(self)

: t = self.start

while t<=self.end:

yield t

t += self.step

# 反向

def__reversed__

(self)

: r = self.end

while r >= self.start:

yield r

r -= self.step

for x in floatrange(

1.0,

4.0,

0.5)

:print

(x)for x in

reversed

(floatrange(

1.0,

4.0,

0.5)):

print

(x)

Python 反向迭代和實現反向迭代

案例 實現乙個連續的浮點數發生器,floatrange,根據給定範圍 start,end 和步進值,產生一些列的浮點數,例如 floatrange 3,4,0.2 將產生下列序列 正向 3.0 3.2 4.0 反向 4.0 3.8 3.0 如何實現?方法1 列表翻轉 usr bin python3 ...

3 4進行反向迭代以及實現反向迭代

coding utf 8 實際案例 實現乙個連續浮點數發生器floatrange 和xrange類似 根據給定範圍 start,end 和步進值 step 產生一系列連續浮點數,如迭代floatrange 3.0,4.0,0.2 可產生序列 l 1,2,3,4,5 l.reverse 會改變原列表 ...

迭代與遞迴

to iterate is human,to recurse divine.l.peter deutsch 迭代是人,遞迴是神 遞迴 int f1 int n1 迭代 int f2 int n2 return s 看完上邊兩個demo,是不是更不知所云 所以下面進行理論 利用變數的原值推算出變數的乙...