在学习了 Python 的基本数据类型后,我们就要开始接触Python程序的控制结构,了解 Python 是如何使用控制结构来更改程序的执行顺序以满足多样的功能需求。如果有的小伙伴在之前学过C语言,java等程序语言后,一定会对此感到很熟悉,因为它们之间是相通的,下面就一起了解 Python 的控制结构吧! 

一、程序的基本结构

程序由三种基本结构组成:顺序结构、分支结构和循环结构。其中:

  1.顺序结构是程序按照线性顺序依次的一种运行方式。

顺序结构

  2.分支结构是程序根据条件判断结果而选择不同向前执行路径的一种运行方式,根据分支路径上的完备性,分支结构包括单分支结构和二分支结构,二分支结构组合形成多分支结构。

                                           

单分支结构                                                                              二分支结构

  3.循环结构是程序根据条件判断结果向后反复执行的一种执行方式,根据循环体条件的不同,循环条件包括条件循环和遍历循环结构。

                                 

条件循环                                                                                                               遍历循环

二、程序的分支结构

1.单分支结构:if语句

Python中 if 语句的语法格式如下:

  if <条件>:

    <语句块>

注:在Java中,if 后的语句块是用大括号进行区分的,而 Python 是使用缩进来区分语句级别,所以在编写 Python 代码时,要慎用缩进!

2.二分支结构:if-else 语句

Python中 if-else 语句用来形成二分支结构,语法格式如下:

  if <条件>:

    <语句块1>

  else:

    <语句块2>

  二分支结构的一种简洁的表达方式: <表达式1> if <条件> else <表达式2>

注:最后一个 else 语句是没有条件的。

3.多分支结构:if-elif-else语句

Python的 if-elif-else 描述多分支语句,语句格式如下:

  if <条件1>:

    <语句块1>

  elif <条件2>:

    <语句块2>

  else:

    <语句块3>

注:与Java不同,Python中没有 else if 语句,而是以 elif 语句来代替相应的功能

三、程序的循环结构

1.遍历循环:for语句

Python使用保留字 for 实现“遍历循环”,基本使用方法如下:

  for <循环变量> in <遍历结构>:

    <语句块>

遍历循环还有一种扩展模式,使用方法如下:

  for <循环变量> in <遍历结构>:

    <语句块1>

  else:

    <语句块2>

在这种循环中,当 for 循环正常执行后,程序会继续执行 else 语句中的内容,因此可以使用<语句块2>来判断循环执行情况。

同时 for 还可以实现遍历功能,遍历结构可以是字符串、列表或range()函数等,如:

  for s in ‘hello‘

    print(s)

  遍历输出”h e  l l  o“

2.无限循环:while 语句

Python通过保留字 while 实现无线循环,基本使用方法如下:

  while <条件>:

    <语句块>

条件判断为 True 时,循环体重复执行语句块中语句;当条件为False时,循环终止,执行与while同级别缩进的后续语句

3.循环保留字:break 和 continue

Python循环结构有两个保留字:breakcontinue,它们用来辅助控制循环执行。其中

  break 用来跳出最内层 for 或 while 循环,脱离该循环后程序从循环代码后继续执行(跳出一层循环)。

  continue 用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳出当前循环(跳出一次循环)。

以上就是Python程序的控制结构了,在实际运用中,合理地使用它们,可以实现多种功能.

Python学习笔记(四)Python程序的控制结构的更多相关文章

  1. Python学习笔记(四)Python函数的参数

    Python的函数除了正常使用的必选参数外,还可以使用默认参数.可变参数和关键字参数. 默认参数 基本使用 默认参数就是可以给特定的参数设置一个默认值,调用函数时,有默认值得参数可以不进行赋值,如: ...

  2. python 学习笔记 9 -- Python强大的自省简析

    1. 什么是自省? 自省就是自我评价.自我反省.自我批评.自我调控和自我教育,是孔子提出的一种自我道德修养的方法.他说:“见贤思齐焉,见不贤而内自省也.”(<论语·里仁>)当然,我们今天不 ...

  3. python学习笔记(一):python简介和入门

    最近重新开始学习python,之前也自学过一段时间python,对python还算有点了解,本次重新认识python,也算当写一个小小的教程.一.什么是python?python是一种面向对象.解释型 ...

  4. python学习笔记:python对象

    一.python对象 python使用对象模型来存储数据,构造任何类型的值都是一个对象.所有的python对象都拥有三个特性:身份.类型和值. 身份:每个对象都有一个唯一的身份标识自己,对象的身份可以 ...

  5. python 学习笔记一——Python安装和IDLE使用

    好吧,一直准备学点啥,前些日子也下好了一些python电子书,但之后又没影了.年龄大了,就是不爱学习了.那就现在开始吧. 安装python 3 Mac OS X会预装python 2,Linux的大多 ...

  6. python学习笔记(13):python并发编程以及系统常用模块

    一.进程与线程 1.进程:程序的一次执行(程序装载入内存,系统分配资源运行).n 每个进程有自己的内存空间.数据栈等,只能使用进程间通讯,而不能直接共享信息 2.线程:所有线程运行在同一个进程中,共享 ...

  7. python学习笔记(python简史)

    一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum) 目前python主要应用领域: ·云计算 ·WEB开发 ·科学运算.人工智能 ·系统运维 ·金融:量化交 ...

  8. 吴裕雄--天生自然python学习笔记:Python CGI编程

    什么是CGI CGI 目前由NCSA维护,NCSA定义CGI如下: CGI(Common Gateway Interface),通用网关接口,它是一段程序,运行在服务器上如:HTTP服务器,提供同客户 ...

  9. python学习笔记(1)--python特点

    python诞生于复杂的信息系统时代,是计算机时代演进的一种选择. python的特点,通用语言,脚本语言,跨平台语言.这门语言可以用于普适的计算,不局限于某一类应用,通用性是它的最大特点.pytho ...

  10. python学习笔记之——python模块

    1.python模块 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python ...

随机推荐

  1. 让ASPX页面可以提交html标签代码的配置

    1:打开web.config文件,在system.web节点里,添加<httpRuntime requestValidationMode="2.0" /> 2:在asp ...

  2. css 背景图居中

    参考:http://www.php.cn/css-tutorial-411901.html position : 50% ;或position : center;

  3. 比特承诺 Bit Commitment

    Introduction-A story  Alice:股票经纪人 Bob:股民   Alice:你的钱交给我,我替你买股票,我专业,挣钱多!   Bob:怎么证明?   Alice:我们上月买进的1 ...

  4. [计蒜客] 矿石采集【记搜、Tarjan缩点+期望Dp】

    Online Judge:计蒜客信息学3月提高组模拟赛 Label:记搜,TarJan缩点,树状数组,期望Dp 题解 整个题目由毫无关联的两个问题组合成: part1 问题:对于每个询问的起点终点,求 ...

  5. 廖雪峰Java10加密与安全-4加密算法-4密钥交换算法

    1DH算法 1.1.原根公式:g^i mod P 条件:1<g<P,0<i<P 原根:介于[1, p-1]之间的任意2个数i,j(p为素数,i≠j)的结果不相等,即 g^i m ...

  6. C++与Matlab混合编程之:矩阵数据结构

    项目需要将matlab代码写成C++,准备用opencv.opencv中矩阵的存储与matlab有所不同,应注意以下问题: 1.matlab中矩阵是按照列优先存储的.对于n0*n1*...*nn维的矩 ...

  7. Jemter测压工具的安装与使用

    注:在安装Jmeter之前,请先检查下电脑有没有装JDK:开始->运行->然后输入cmd->进入命令行界面,输入java -version , 出现以下信息就是此电脑已安装了JDK ...

  8. 学习Python笔记---变量和简单数据类型

    首先声明,这个是个人在自学的一些笔记,因为是小白,刚接触Python,之前也没有过类似的经验,所以很多东西对于其他人来说可能是小白级别的,写出来没有其他的意思就是自己整理然后记录一下,顺便分享出来,而 ...

  9. Effective Modern C++ 条款2:理解auto型别推导

    在条款1中,我们已经了解了有关模板型别的推导的一切必要知识,那么也就意味着基本上了解了auto型别推导的一切必要知识. 因为,除了一个奇妙的例外情况,auto型别推导就是模板型别推导.尽管和模板型别推 ...

  10. Puppet master-agent模型搭建

    Puppet master-agent模型工作过程: 基于ssl xmlrpc进行通信,端口8140/tcp agent:默认每隔30分钟向master发送node name和facts,并请求cat ...