在PyCharm中 运行问题
Topic source以下是格式化后的代码,默认粘贴后,格式不对,不好意思
class Fib(object):
def __init__(self):
self.__a, self.__b = 0, 1 # 初始化两个计数器 a,b
def __iter__(self):
return self # 实例本身是迭代对象
def __next__(self):
self.__a, self.__b = self.__b, self.__a + self.__b
if self.__a > 100: # 设置退出循环的条件
return StopIteration()
return self.__a # 返回下一个值
def __getitem__(self, idx):
__a, __b = 1, 1
for x in range(idx):
__a, __b = __b, __a + __b
return __a
# 测试__iter__,__getitem__
for n in Fib():
print(n)
f = Fib()
print(f[0])
print(f[1])
class Fib(object): def __init__(self): self.__a, self.__b = 0, 1 # 初始化两个计数器 a,b def __iter__(self): return self # 实例本身是迭代对象 def __next__(self): self.__a, self.__b = self.__b, self.__a + self.__b if self.__a > 100: # 设置退出循环的条件 return StopIteration() return self.__a # 返回下一个值 def __getitem__(self, idx): __a, __b = 1, 1 for x in range(idx): __a, __b = __b, __a + __b return __a# 测试__iter__,__getitem__for n in Fib(): print(n)
- 1
心在扁叶尖上
我跟随实例在PyCharm中编写此代码,当我右键 Run xxx.py时,最后的for循环一直在打印空白 未退出 for循环后面的测试也未执行,请问有人知道是怎么回事么?