小伙伴们,大家好啊,欢迎回到我们的Python专题。今天我们的主要讲述内容为语句结构。程序是对一段逻辑的体现,而逻辑可以分为三种结构,这三种结构就对应着编程中的语句结构,他们分别是:
- 顺序结构
- 选择结构
- 循环结构
一、输入
在进行今天的讲述之前,我们先了解一下输入。上一篇文章我们讲述了输出函数print(),今天先对这个方面进行一下收尾,讲一下输入函数input()。
input()函数使用格式如下:
input('请输入')在单引号内的是输入的提示词,程序运行时会展示给用户看,同时程序暂停,直到用户输入数据。这里我们要注意,input()函数得到的数据全部为str类型(字符类型),需要进行格式转换。格式转换很简单,使用对应数据类型缩写加上括号,括号内是想要转换的数据。举例说明:

在print()函数中end参数的设置会在函数一篇进行讲解,大家先记得这种用法。
二、基本运算符
输入我们就先了解到这里。下面我们介绍一下基本运算符。Python中的基本运算符主要分为四种:
- 算术运算符
- 比较运算符
- 逻辑运算符
- 赋值运算符
1. 算术运算符
Python的算术运算符大部分与数学中的运算是一样的,包括
加(+)、减(-)、乘(*)、除(/)四则运算,
乘方(**)运算,
取余(%)运算和
取整(//)运算。这些运算的
优先级与数学中的相同,取余和取整的优先级与除法相同。取余运算和取整运算是我们平时数学中没有接触到的。
取余运算是指得到商的余数,取整运算是指得到的商直接取整数,注意这里不进行四舍五入,直接舍弃舍弃小数
。给大家用代码进行一下演示,更直观的体会取余和取整运算。

2. 比较运算符
比较运算符也与数学中的相一致,
大于(>)、小于(=)、不等于(!=)
。这里需要注意的是
等于号由两个等号构成
,注意与赋值符号相区分。
3. 逻辑运算符
逻辑运算符一般用于连接两个结果为布尔值的表达式。这里提到的布尔值就是上一篇提到的bool类型(布尔类型)。在python中,
0、空和None都被看成False,相应的,非0和非空的东西都被看成是True。当布尔值被用于计算时,python自动将True转换为1,False转换为0。逻辑运算符总共有三个:
与(and)、或(or)、非(not),其中非运算还可以使用叹号(!)。这三种运算想必大家都不陌生,这里不再过多的介绍,给出对应的真值表。

4. 赋值运算符
赋值运算符中,最重要的就是
赋值符号(=)
,其他的还有
+=、-=、*=、/=、**=、%=和//=
这几种,这几种都是对运算的简化。我们用+=举例说明,其他的与它是相同的。

可以看到,
所谓的+=
就
是
在原变量的基础上直接增加
某值
,那么为什么
要这
么写呢?在很早的时候,计算机并没有像现在这么大的内存,这样简写表达式能缩减对内存的占用,虽然对现在的计算机而言,不再需要这样的简化,但是节俭内存的好习惯我们还是要学习的。基本运算符就讲到这里,下面我们开始今天的正题,语句结构。
三、语句结构
开篇我们提到,语句结构一共有三种,我们来一一解释:
1. 顺序结构顺序结构是我们最熟悉的结构,主要特点就是
线性,从第一步执行到最后一步没有分支,也不需要多次执行同一步骤,总体而言,我们写的程序都是顺序结构,都会从第一行一直执行到最后一行。结构图如下:

结构图中只展现了两步,顺序结构会从头到尾按步骤执行到最后。
2. 选择结构
选择结构是一种含有分支的结构,根据不同的条件,程序会进入不同的分支,出现不同的结果。结构图如下:


根据结构图,我们可以看到选择结构主要有三类,单分支、双分支、多分支。python中对于选择结构的实现大致框架如下:
# 单分支if 条件表达式: 执行代码 # 满足条件执行,注意语句前的缩进(四个空格)# 双分支if 条件表达式: 执行代码 # 满足条件时执行else: 执行代码 # 不满足条件时执行# 多分支if 条件表达式1: 执行代码 # 满足条件1执行elif 条件表达式2: 执行代码 # 满足条件2执行else: 执行代码 # 上述条件均不满足时执行根据框架和结构图,相信大家不难理解。这里要注意,在if、elif和else后面的冒号要是英文输入的。在多分支中,elif语句可以有多个。这三类选择结构都具有相似之处,这里以多分支进行举例。

选择结构的语法框架不难,但是一定要注意缩进的问题,python对于缩进是非常严格的,在思维导图中我们就已经提到过“缩进”是python中的绝对规范,缩进不正确,代码就是不正确的。还要注意缩进长度为四个空格,或者是一个Tab键的长度,这里建议直接使用空格,毕竟有时由于设置问题Tab键长度不是四个空格。
在python中没有switch-case(C语言中多分支选择的一种写法)的选择语句,一定不要记混。python中的多分支选择语句仅有if-elif-else语句。
选择结构还可以进行嵌套操作,即在一个选择结构的执行代码中添加另一个选择结构的代码,这样能够筛选出满足条件1同时满足条件2的数据。
3. 循环结构
循环结构是语句结构的最后一部分。所谓循环,就是不停的执行一个步骤,直到满足某个条件为止。循环结构的结构图如下:

循环结构的实现有两种方式,for循环和while循环,通过两个单词的中文意思我们不难发现,for循环多用于明确循环次数的循环,下面我们给出for循环的框架。
# for循环for 临时变量 in 集合对象: 执行代码在for循环的框架中,临时变量可以自己定义,集合对象也是可迭代对象,一般为元组、列表和字典(下一篇会重点讲述)。range()函数也是可迭代对象中最常用的方式。range()函数的结构如下:
range(start int,end int,step) range(n)range()函数有两种使用方式,第一种是按照步长step取[start,end)的所有值,注意这里是左闭右开区间,当step默认不为0,当用户未指定时,默认值为1。第二种方式中的n是用户自己指定的数字,range(n)表示从0开始一直取值到n-1,步长为1,用在循环中就表示循环n次。举例说明:

while表示“直到...为止”,while循环多用于不明确循环次数的循环,while循环的框架如下:
while 循环条件: 执行代码while循环会执行其中的代码直到满足循环条件。举例说明:

这里我们可以看到while循环的两种类型,第一种就是设置了循环条件的while循环,是我们上文一直在说的。第二种while循环的循环条件为True,是一直成立的,也就是说如果没有其他的退出循环语句,while循环要一直进行下去,成为“死循环”。这个时候程序会一直执行,不会停止,也就是说程序不能得出最终的结果,程序失去控制了。但是我们可以看到这里的程序还是成功的退出了循环,并且输出了一个直角三角形。这里的重点在于break语句。
4. break和continue语句
break语句表示终止当前循环,注意这里一定是当前循环,也就是break语句所在的循环。continue语句用法与break语句相同,表示跳过当前这一轮循环,进行下一轮循环,举个例子:

我们可以看到当a为3时,直接跳过了当前的循环。
注意,break和continue语句不一定只用在while死循环中,其他循环也可以使用。
与选择结构相同,循环结构也可以进行嵌套,同时,循环结构和选择结构也可以互相嵌套(如上例的“死循环”,break语句块就是一个选择结构语句)。
三、总结
本篇文章我们讲述了输入、基本运算符和语句结构两个知识点。讲述了顺序结构、选择结构(if-elif-else)、循环结构(for循环和while循环)。同时还讲述了break和continue语句。
写在最后
我们下一篇文章将会讲述高级数据类型,包括元组、列表、字典三种。对于这三种类型的数据,会有一些非常奇妙的操作,这些操作是其他语言所不具备的,也是python灵活性的体现。
有问题和建议欢迎大家留言哦~
















