def fib(max): n,a,b=0,0,1 while(n<max): print(b) a,b=b,a+b n=n+1 return'done'g=fib(6)while true: try: x=next(g) print('g:',x) except StopIteration as e: print('Generator return value:',e.value) break错误原因: except StopIteration as e: ^IndentationError: unindent does not match any outer indentation level
1 回答
已采纳
Nelson_Zhao
TA贡献21条经验 获得超4个赞
明显的编译语法错误,空格多打了。
except前面多打了一个空格。我复制到IDE里面果然是多可一个空格。看下图
删掉空格,发现还有一个错误。Python里面True和False都是要首字母大写的。需要把
while true:
改为
while True:
添加回答
举报
0/150
提交
取消