对一个会编程的工程师而言,那种脱离软件束缚、享受数据自由的感觉是不言而喻的,做项目的效率也是杠杠的。当然需要具备一定的英语基础,要不然面对满屏的英文比较难受。编者虽然会matlab、python、C、VBA、TCL等多种编程语言,其实常用的就那么1~2种语言为主。发现用惯了一种编程语言,而换用另一种编程语言的时候,突然变得很不适应,由于基本语法知识点太多,不可能完全记得住,往往会忘了很多原本已经会的基本语法,从而导致工作效率降低,去查找曾经的学习总结笔记又很费时间、搜索效率也较低。加之,网络上的学习资料很混杂、不简洁、可读性不强,而且对比可以加深理解、加强记忆,故将平时遇到的经验总结于此公众号,便于自己及时查找和朋友们学习参考使用。本次对比一下for循环和N次方用法区别:
【MATLAB中for循环】:
(用法1 ) :数字范围
for i=1:10 % 注释:表示i从1以默认增量步1递增到10 即1,2,3...10
% 加餐:i=1:0.1:10 则表示i从1以增量步0.1递增到10 即1,1.1...
a(i)=i^2 % 注释:表示矩阵a(i)元素的值等于i的2次方,用^表示2次方
disp(a(i)); % 注释:显示矩阵a(i)元素的值end
要点说明: 若懂了要点之后,也可以实现递减功能,如:for i=10:-1:1
(用法2 ) :矩阵内容范围(数字、字符均可)
for a = ['a','b','c','d','e']
disp(a); % 注释:显示矩阵a(i)元素的值end
【Python中for循环】:
相对来说,Python中for循环的用法就较灵活多变!
(用法1 ) :数字范围1【标准用法】
for i in range(1,10,1):# 注释:i从1递增到(10-1)增量步1,即1,2,3...9
a[i-1]=i**2 # 注释:矩阵a[0]=i的2次方,平方的表达方式为2个**星号
# 注释:1个*星号则表示乘
print("i的平方为:\n",s) # 注释:循环打印出a的值
要点说明: (1) 若要使i从1递增到10,则表示为:for i in range(1,11,1); (2) range表示i的数值的范围,但记住要减1; (3) Python用2个**星号表示N次方。
(用法2) :数字范围2
for i in range(100): # 注释:i从0递增到(100-1)增量步1,即0,2,3...99
# 注释:默认起始值是从0开始
a[i-1]=i**2
print("i的平方为:\n",s) # 注释:循环打印出矩阵a的每个值
要点说明:
(1) 若没指定起始值,则默认起始值为0;
(2) 若没指定增量值,则默认增量值为1;
(3) 还表示为for i in range(0,100)具有相同效果。
(用法3) :字符范围1
for i in "banana": # 注释:i的范围是字符串中的每一个字符
print(i) # 注释:循环打印出i的值
运行结果:
(用法4) :字符范围2
fruits = ["apple", "banana", "orange"]
for i in fruits: # 注释:i的范围是fruits矩阵中的每一个元素
print("i的值为:\n",i) # 注释:循环打印出i的值
要点说明:Python的for循环中,i的范围也可是含任何内容的矩阵范围。
运行结果:
【划重点.区别总结】:
(1) MATLAB中for循环中,i的范围可以是数值范围和字符串范围;
(2) Python中for循环的用相对灵活一点,i也可以是数值范围和字符串范围、矩阵内容范围。 (3) MATLAB中用^表示N次方;Python用2个**星号表示N次方;
(4) MATLAB中注释符号为%百分号;Python中注释符号为#井号。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删