选择、循环与函数结构:MATLAB VS Python

整理基本的程序控制结构,主要是选择 和 循环。

1.MATLAB选择结构

(1)单分支if语句格式:

  1. if 条件
  2. 语句组
  3. end

(2)双分支if语句格式(常用):

  1. if 条件
  2. 语句组
  3. else
  4. 语句组
  5. end

eg.

  1. if x== 10
  2. y = cos(x+1)
  3. else
  4. y = x*sqrt(x+sqrt(x))
  5. end

(3)多分支if语句格式:

  1. if 条件1
  2. 语句组1
  3. elseif 条件2
  4. 语句组2
  5. ......
  6. elseif 条件m
  7. 语句组m
  8. else
  9. 语句n
  10. end

(4)switch语句:

  1. switch 表达式
  2. case 表达式1
  3. 语句组1
  4. case 表达式2
  5. 语句组2
  6. ......
  7. case 表达式m
  8. 语句组m
  9. otherwise
  10. 语句组n
  11. end

2.MATLAB循环结构

(1)for语句格式:

  1. for 循环变量 = 表达式1:表达式2:表达式3
  2. 循环体语句
  3. end

eg.

  1. for m = 100:999
  2. m1 = m1 + m
  3. end

(2)while语句格式:

  1. while 条件
  2. 循环体语句
  3. end

(3)break 和continue

break终止整个循环;continue跳出当前循环的剩下语句吗,继续下一次循环

(4)循环嵌套

每一个for都与一个end匹配,且外层for与外层end匹配,嵌套层数任意。

3.MATLAB函数结构

(1)基本结构:

  1. function 输出形参表 = 函数名(输入形参表)
  2. 注释说明部分
  3. %注释方法一
  4. %ctrl+r 注释选中部分,ctrl+t 对选中的注释取消
  5. 函数体语句
  6. return 输出参数 %非必须

eg.

  1. function [s,p] = fcircle(r)
  2. %输入半径,求面积和周长
  3. s = pi * r * r
  4. p = 2 * pi *r

(2)全局变量和局部变量

函数文件中变量是局部的吗,与MATLAB工作空间相隔离,若定义为全局变量,则全程有效。

全局变量会破坏函数对变量的封装,降低程序的可读性,慎用,恰当取名。

全局变量用global命令定义,格式为:

global 变量名

4.Python选择结构

(1)if语句格式:

  1. if 条件1
  2. 语句块1
  3. elif 条件2
  4. 语句块2
  5. elif 条件3
  6. 语句块3
  7. else
  8. 语句块4

注:必须要通过缩进的方式来表示语句块的开始和结束;缩进推荐用四个空格;有冒号的地方语句块都要缩进

(2)三元操作符:

A = Y if X else Z

如果X为真,则执行A = Y

如果X为假,则执行A = Z

5.Python循环结构

(1)for语句格式:

  1. for 循环规则:
  2. 操作语句 #(对比for,缩进四个空格)

eg.

  1. for i in range(10)
  2. print hell[i]

range(start,stop[,step]) 注意:不包含stop

(2)while语句格式:

  1. while 循环规则:
  2. 操作语句(对比while,缩进四个空格)

6.Python函数结构

(1)函数结构:

  1. def 函数名(输入形参)
  2. 函数体(函数体所有语句对比def,缩进四个空格)
  3. return 输出变量

eg.

  1. def add(a,b)
  2. return a+b

(2)命名规则:

文件名:全小写,可以使用下划线

函数名:小写,可以使用下划线 (尽量避免大小写混用)

函数参数:如果一个函数参数名称与保留的关键字冲突,通常使用一个后缀下划线

变量:全小写,用下划线连接各个单次

选择、循环与函数结构:MATLAB VS Python的更多相关文章

  1. python小练习:使用循环和函数实现一个摇骰子小游戏。游戏规则如下:游戏开始,首先玩家选择Big or Small(押大小),选择完成后开始摇三个骰子,计算总值,11<=总值<=18为“大”,3<=总值<=10为“小”。然后告诉玩家猜对或者是猜错的结果。

    python小练习:使用循环和函数实现一个摇骰子小游戏.游戏规则如下:游戏开始,首先玩家选择Big or Small(押大小),选择完成后开始摇三个骰子,计算总值,11<=总值<=18为“ ...

  2. python 循环语句 函数 模块

    python循环语句 while循环语法结构 当需要语句不断的重复执行时,可以使用while循环 while expression: while_suite 语句ehile_suite会被连续不断的循 ...

  3. 【Java】流程控制 - 顺序结构、 选择(分支)结构(单分支、双分支、多分支、嵌套)、循环结构(for、while、do...while)、跳转语句(break、continue)

    流程控制语句结构 文章目录 流程控制语句结构 一. 顺序结构 1. 输出语句 2. 输入语句 3.code 二.复合语句 三. 分支结构 1. 条件判断 1.单分支结构 2.双分支结构 3.多分支结构 ...

  4. 函数和代码复用 --Python

    1.关于递归函数的描述,以下选项中正确的是 A.包含一个循环结构 B.函数比较复杂 C.函数内部包含对本函数的再次调用 D.函数名称作为返回值 答案:D 答案解析:递归函数是指函数内部包含对本函数的再 ...

  5. 【算法导论】八皇后问题的算法实现(C、MATLAB、Python版)

    八皇后问题是一道经典的回溯问题.问题描述如下:皇后可以在横.竖.斜线上不限步数地吃掉其他棋子.如何将8个皇后放在棋盘上(有8*8个方格),使它们谁也不能被吃掉?         看到这个问题,最容易想 ...

  6. PTA循环,函数,数组作业

    PTA循环实验作业 题目一:统计素数并求和 ### 1.PTA提交列表 2.设计思路(+流程图) 先定义变量(包含素数区间,循环次数,除数,素数个数记录和和的记录) 输入范围 一重循环:循环提取自然数 ...

  7. ffplay.c函数结构简单分析(画图)

    最近重温了一下FFplay的源代码.FFplay是FFmpeg项目提供的播放器示例.尽管FFplay只是一个简单的播放器示例,它的源代码的量也是不少的.之前看代码,主要是集中于某一个"点&q ...

  8. matlab转python

    最近在做把matlab代码转成python代码,没有用过matlab,python也只是局限于爬虫,所以.... matlab与python最大的不同是,matlab的下标是从1开始的,python和 ...

  9. matlab 调用 python

    众所周知,Python凭借其众多的第三方模块,近年来被数据分析.机器学习.深度学习等爱好者所喜爱,最主要的是Python还是开源的.另一方面,MATLAB因其在仿真方面的独特优势也被众多人追捧.而在国 ...

随机推荐

  1. C++基础学习7:new/delete操作符

    在C语言中,动态分配和释放内存的函数是malloc.calloc和free,而在C++语言中,new.new[].delete和delete[]操作符通常会被用来动态地分配内存和释放内存. 需要注意的 ...

  2. Oracle 11g服务OracleDBConsoleorcl启动失败(异常或报错)

    OracleDBConsoleorcl:Oracle数据库控制台服务,orcl是Oracle的实例标识,默认的实例为orcl.在运行Enterprise Manager(企业管理器OEM)的时候,需要 ...

  3. python BeautifulSoup基本用法

    #coding:utf-8 import os from bs4 import BeautifulSoup #jsp 路径 folderPath = "E:/whm/google/src_j ...

  4. jq方法(end)

    .end()方法: 使得结果集可以后退一步 $('div') .find('h3') .eq() .html('hello') .end()//退回到选中所有的h3元素的那一步 .eq()//选中第一 ...

  5. import与export

    expoer default 输出的是一个对象 export 输出的是对象的一个元素

  6. java——快排、冒泡、希尔、归并

    直接贴代码 快排: public class Test { private static void sort(int[] nums){ if(nums == null || nums.length = ...

  7. SpringCloud+Redis

    redis①是一种nosql数据库,以键值对<key,value>的形式存储数据,其速度相比于MySQL之类的数据库,相当于内存读写与硬盘读写的差别,所以常常用作缓存,用于少写多读的场景下 ...

  8. Vue 参数传递及刷新后依旧存在

    获取参数方式有两种: 1.params2.query 第一种方式: params this.$router.push({name:'Hello',params:{name:'zs',age:'22'} ...

  9. spark第一篇:RDD Programming Guide

    预览 在高层次上,每一个Spark应用(application)都包含一个驱动程序(driver program),该程序运行用户的主函数(main function),并在集群上执行各种并行操作. ...

  10. Robot Framework搭建

    需要安装的内容如下: 1. Python2.7.13(听说python3对RF支持的不是很好,所以我下的Python2) 2. wxPython 2.8.12.1(只能这个版本) 3. robotfr ...