猿问
为什么代码在Spyder中运行报错啊?什么原因?
for i in [0,1,2]: i=i+1 print(i)
这段代码我在jupyter Notebook里面可以运行,在Spyder中运行报错,哪位知道为啥啊
不负相思意
浏览 316
回答 1
1回答
慕妹3242003
f()中的i是static,静态局部变量,所以每次调用函数之后f()中的i并不被销毁,所以当main函数中的for循环第一次循环时,f()中的i=1,f()=s=1;第二次时f()中的i=2,f()=s=2;第三次时f()中的i=3,f()=s=3;第四次时f()中的i=4,f()=s=4;第五次时f()中的i=5,f()=s=5;注意这里每次调用函数时谁都重新变为1,又因为s+=i在i++之前,所以每次都是1+前一次i的值,所以a=1+2+3+4+5=15
0
0
0
随时随地看视频
慕课网APP
相关分类
C
typedef入门问题
1 回答
我要回答