小伙伴们,大家好啊,欢迎回到我们的Python专题。今天我们的主要讲述内容为语句结构。程序是对一段逻辑的体现,而逻辑可以分为三种结构,这三种结构就对应着编程中的语句结构,他们分别是:

  • 顺序结构
  • 选择结构
  • 循环结构


一、输入

在进行今天的讲述之前,我们先了解一下输入。上一篇文章我们讲述了输出函数print(),今天先对这个方面进行一下收尾,讲一下输入函数input()。

input()函数使用格式如下:

input('请输入')

在单引号内的是输入的提示词,程序运行时会展示给用户看,同时程序暂停,直到用户输入数据。这里我们要注意,input()函数得到的数据全部为str类型(字符类型),需要进行格式转换。格式转换很简单,使用对应数据类型缩写加上括号,括号内是想要转换的数据。举例说明:

Python怎么按条件输出列表_python 满足条件推出函数

在print()函数中end参数的设置会在函数一篇进行讲解,大家先记得这种用法。



二、基本运算符 输入我们就先了解到这里。下面我们介绍一下基本运算符。Python中的基本运算符主要分为四种:

  • 算术运算符
  • 比较运算符
  • 逻辑运算符
  • 赋值运算符

1. 算术运算符

Python的算术运算符大部分与数学中的运算是一样的,包括

加(+)、减(-)、乘(*)、除(/)四则运算, 乘方(**)运算, 取余(%)运算和 取整(//)运算。这些运算的 优先级与数学中的相同,取余和取整的优先级与除法相同。取余运算和取整运算是我们平时数学中没有接触到的。 取余运算是指得到商的余数,取整运算是指得到的商直接取整数,注意这里不进行四舍五入,直接舍弃舍弃小数 。给大家用代码进行一下演示,更直观的体会取余和取整运算。

Python怎么按条件输出列表_python 满足条件推出函数_02

2. 比较运算符

比较运算符也与数学中的相一致,

大于(>)、小于(=)、不等于(!=) 。这里需要注意的是 等于号由两个等号构成 ,注意与赋值符号相区分。

3. 逻辑运算符

逻辑运算符一般用于连接两个结果为布尔值的表达式。这里提到的布尔值就是上一篇提到的bool类型(布尔类型)。在python中,

0、空和None都被看成False,相应的,非0和非空的东西都被看成是True。当布尔值被用于计算时,python自动将True转换为1,False转换为0。逻辑运算符总共有三个: 与(and)、或(or)、非(not),其中非运算还可以使用叹号(!)。这三种运算想必大家都不陌生,这里不再过多的介绍,给出对应的真值表。

Python怎么按条件输出列表_循环结构_03

4. 赋值运算符


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

Python怎么按条件输出列表_python 满足条件推出函数_04


可以看到, 所谓的+= 就 是 在原变量的基础上直接增加 某值 ,那么为什么 要这 么写呢?在很早的时候,计算机并没有像现在这么大的内存,这样简写表达式能缩减对内存的占用,虽然对现在的计算机而言,不再需要这样的简化,但是节俭内存的好习惯我们还是要学习的。基本运算符就讲到这里,下面我们开始今天的正题,语句结构。



三、语句结构

开篇我们提到,语句结构一共有三种,我们来一一解释:


1. 顺序结构顺序结构是我们最熟悉的结构,主要特点就是 线性,从第一步执行到最后一步没有分支,也不需要多次执行同一步骤,总体而言,我们写的程序都是顺序结构,都会从第一行一直执行到最后一行。结构图如下:

Python怎么按条件输出列表_python 满足条件推出函数_05

结构图中只展现了两步,顺序结构会从头到尾按步骤执行到最后。

2. 选择结构

选择结构是一种含有分支的结构,根据不同的条件,程序会进入不同的分支,出现不同的结果。结构图如下:

Python怎么按条件输出列表_Python怎么按条件输出列表_06

Python怎么按条件输出列表_while循环_07

根据结构图,我们可以看到选择结构主要有三类,单分支、双分支、多分支。python中对于选择结构的实现大致框架如下:

# 单分支if 条件表达式:    执行代码 # 满足条件执行,注意语句前的缩进(四个空格)# 双分支if 条件表达式:    执行代码 # 满足条件时执行else:    执行代码 # 不满足条件时执行# 多分支if 条件表达式1:    执行代码 # 满足条件1执行elif 条件表达式2:    执行代码 # 满足条件2执行else:    执行代码 # 上述条件均不满足时执行

根据框架和结构图,相信大家不难理解。这里要注意,在if、elif和else后面的冒号要是英文输入的。在多分支中,elif语句可以有多个。这三类选择结构都具有相似之处,这里以多分支进行举例。

Python怎么按条件输出列表_选择结构_08

选择结构的语法框架不难,但是一定要注意缩进的问题,python对于缩进是非常严格的,在思维导图中我们就已经提到过“缩进”是python中的绝对规范,缩进不正确,代码就是不正确的。还要注意缩进长度为四个空格,或者是一个Tab键的长度,这里建议直接使用空格,毕竟有时由于设置问题Tab键长度不是四个空格。

在python中没有switch-case(C语言中多分支选择的一种写法)的选择语句,一定不要记混。python中的多分支选择语句仅有if-elif-else语句。

选择结构还可以进行嵌套操作,即在一个选择结构的执行代码中添加另一个选择结构的代码,这样能够筛选出满足条件1同时满足条件2的数据。


3. 循环结构

循环结构是语句结构的最后一部分。所谓循环,就是不停的执行一个步骤,直到满足某个条件为止。循环结构的结构图如下:

Python怎么按条件输出列表_循环结构_09

循环结构的实现有两种方式,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次。举例说明:

Python怎么按条件输出列表_Python怎么按条件输出列表_10

while表示“直到...为止”,while循环多用于不明确循环次数的循环,while循环的框架如下:

while 循环条件:    执行代码

while循环会执行其中的代码直到满足循环条件。举例说明:

Python怎么按条件输出列表_while循环_11

这里我们可以看到while循环的两种类型,第一种就是设置了循环条件的while循环,是我们上文一直在说的。第二种while循环的循环条件为True,是一直成立的,也就是说如果没有其他的退出循环语句,while循环要一直进行下去,成为“死循环”。这个时候程序会一直执行,不会停止,也就是说程序不能得出最终的结果,程序失去控制了。但是我们可以看到这里的程序还是成功的退出了循环,并且输出了一个直角三角形。这里的重点在于break语句。


4. break和continue语句

break语句表示终止当前循环,注意这里一定是当前循环,也就是break语句所在的循环。continue语句用法与break语句相同,表示跳过当前这一轮循环,进行下一轮循环,举个例子:



Python怎么按条件输出列表_while循环_12

我们可以看到当a为3时,直接跳过了当前的循环。

注意,break和continue语句不一定只用在while死循环中,其他循环也可以使用。

与选择结构相同,循环结构也可以进行嵌套,同时,循环结构和选择结构也可以互相嵌套(如上例的“死循环”,break语句块就是一个选择结构语句)。



三、总结

本篇文章我们讲述了输入、基本运算符和语句结构两个知识点。讲述了顺序结构、选择结构(if-elif-else)、循环结构(for循环和while循环)。同时还讲述了break和continue语句。



写在最后

我们下一篇文章将会讲述高级数据类型,包括元组、列表、字典三种。对于这三种类型的数据,会有一些非常奇妙的操作,这些操作是其他语言所不具备的,也是python灵活性的体现。

有问题和建议欢迎大家留言哦~