要求:實現乙個連續浮點數發生器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,是不是更不知所云 所以下面進行理論 利用變數的原值推算出變數的乙...