bython和Mathematica里面for循环语句的对比
来源:网络收集 点击: 时间:2024-05-08for i in range(10):
print(1**i+2**i+3**i)
i+=1
这个for语句,是用来计算1^i+2^i+3^i,当i从0取到9,对应的结果的。注意两点:
1、在python里面,x的y次方应该写为x**y,而不是x^y;
2、i循环加1的时候,python不支持i++的写法,要写为i+=1,或者i=i+1。
上面代码的运行结果如下图:

如果把代码里面该写一下:1^i+2^i+3^i,会怎么样呢?
得到的东西,我也不知道是什么玩意。

如果把代码里面的i+=1改为i++,运行的时候就会报错。

注意看第一步里面的代码,for里面,是先执行print,之后才执行i加1,接着再执行下一次循环。
那么,如果把i+=1放到print上面,就是先执行i加1,再执行print。执行结果如下:

如果用Mathematica实现上面第一步里面的效果,那么代码如下:
For]
运行结果如下:

奇怪啊,明明是i++在前面,为什么Mathematica先执行的是Print呢?试试下面的代码,把i++放到后面:

本文主要是介绍了python和Mathematica在for循环语句里面的区别,在上面的两个段落的对比里,就可以看出来。
python里面不支持i++和3^i这类写法的,而Mathematica则允许。
python对代码的层次有很严格的要求,比如换行和缩进,而Mathematica里面一行搞定。
MATHEMATICAPYTHONFOR语句版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_707213.html