matlab和python语法对比
python+NumPy+Scipy+matplotlib = matlab
python免费,matlab收费,所以python用的人越来越多。
下面简单比较下2个语言的区别:
| matlab | python |
逻辑行和物理行 | 用分号“;” disp(‘hello’);disp(‘yes’) | 用分号“;” print “hello”;disp(‘yes’) |
缩进 | 无要求,但是要程序有逻辑,清晰最好有缩进,尤其是同一层次用相同的缩进数目。 | 用缩进表示程序逻辑,要求同一层次的代码必须有相同的缩进空白数目,否则报错。 def myfun1(a,b): c=a+b return c
def myfun2(a,b): c=a+b return c |
注释 | % | # |
续行 | … | \ |
条件语句 | if condition elseif condition else end | if condition : elif condition: else: |
循环语句 | for number = 1:n
end
while condition end
break 跳出整个循环 continue 跳出该次循环 | for number in range(1,n) :
while :
break 跳出整个循环 continue 跳出该次循环 |
函数定义 | function [output]=name(parameters) end | def name(parameters): return output |
运算符 | +,-,*,/,^ | +,-,*,/,**
|
逻辑运算 | >,<,>=,<=,==,~= | >,<,>=,<=,==,!= |
布尔运算 | &,&& |,|| ~ | and or not |
开始索引 | 1 | 0 |
整除问题 | /直接取得准确结果 如,5/3 结果是1.6667 | /两边是整数时候为整除 5/3 结果是1
|
数据结构 | 矩阵 结构体struct patient.name = 'John Doe'; patient.billing = 127.00; patient.test = [79, 75, 73; 180, 178, 177.5; 220, 210, 205]; 元胞数组cell |
列表list mylist=[‘apple’,’mango’,’carrot’,’banana’] 字典dic ab = { 'Swaroop' :'swaroopch@byteofpython.info', 'Larry' : 'larry@wall.org', 'Matsumoto' : 'matz@ruby-lang.org', 'Spammer' : 'spammer@hotmail.com'} 元组 zoo = ('wolf', 'elephant', 'penguin') |