python第二章:控制流

变成实际上是一个过程的提现,每个过程都是有多个流程块组成。

比如:判断是否下雨的过程

python第二章:控制流

 

1.布尔值

在第一章最后举例了比较操作后,最终返回的结果 True or False

True 和 False是一组布尔值,并且注意的是首字母大写

布尔值可以和其他数据类型一样存放在变量里,另外也可以用作表示两组数据是否相等

 

2.比较操作符

”比较操作符“比较两组数据,最后的结果就是布尔值

python第二章:控制流

 

通过这些操作符比较后,最终得出的结果是布尔值

例如:

print(1==1) 返回True

print(2!=2) 返回False

print(2>1) 返回True

print(1>2) 返回False

print('hello' == 'hello') 返回True

print('hello' == 'Hello') 返回False

另外注意 :

(1)==和!=可以用作所有数据类型进行比较,但是>、<、>=、<= 仅仅用户整型和浮点型

(2)==和=需要注意区分,==是比较操作符,而=是赋值使用

3.布尔操作符

布尔操作符一共有三类:and 、or、not

熟悉java的可以知道 and相当于&& ,or相当于 || ,not相当于!

and表示并且,意思就是and两边的布尔结果值都要是True,最终才返回True

python第二章:控制流

 

or表示或者,意思就是and两边的布尔结果值只要有一个是True,结果就返回True

python第二章:控制流

 

not表示非,即取相反值

python第二章:控制流

 

布尔操作符和比较操作符同时使用

print((2>1) and (5>4)) 结果:True

print((4>5) and (5>3)) 结果:False

 

4.条件代码块

这是一种最常见,使用最频繁的代码逻辑

比如本章一开始的流程图里,菱形处都代表条件代码块的逻辑

条件代码块的结构:

python第二章:控制流

 

解析:input()函数接收键盘输入的内容,保存到name变量中,键盘输入的内容是字符串,所以name的数据类型是字符串,if 后面就是进行逻辑判断的表达式,如果name等于'chengjq',注意,‘chengjq’这里是字符串,如果缺少单引号,则报错。如果满足输入的内容等于‘chengjq’,也就是返回的结果为True,则打印 hello chengjq

else表示否则,如果输入的内容不是‘chengjq’,则进入else代码块,输出 sorry chengjq

另外:if和else的最后都要加上冒号: 不要漏了

结构简介:

python第二章:控制流

 

在很多时候,只有简单的if else子句无法满足需求,就可以使用elif语句

python第二章:控制流

 

结构和if语句一样,后面需要加上True 或者 False的结果表达式

在实际情况下,需要注意条件的顺序,不一样的顺序最终出来的结果可能会不一样,另外,尽可能判断的所有可能性都包含在条件代码块里

5.whlie 循环语句

在现实情况下,需要循环不断的去做一件事,这个时候就用到循环语句

while循环语句的代码结构

python第二章:控制流

 

while语句的结构和if语句的结构很类似

python第二章:控制流

 

输出:5个hello world

解析:只要spam小于5 就一直输出hello world。但是每次输出一个hello world,spam就加1,当spam加到5的时候,spam<5 结果是False,不满足条件,则跳出while循环

6.break语句

break关键词是终止循环

比如在一个while循环中

python第二章:控制流

 

解析:如果没有if语句,这个while循环将一直循环下去,这就是死循环,如果显示情况下,程序很可能就直接崩溃了

但是结合之前的if语句,如果spam等于5的时候,该whilie语句就直接跳出循环,不会造成死循环

 

7.continue语句

continue关键词是结束当前循环,继续执行下一个循环

python第二章:控制流

 

解析:还是结合这个例子,当spam等于3时,执行continue,跳出当前循环,不打印hello world,但是spam还是要加1.当spam等于4的时候 不执行if和elif语句,打印hello world ,然后spam加1,当spam等于5的时候,执行elif里的代码块,跳出循环。

8.for循环和range函数

当程序中需要执行固定的次数时,可以使用for循环来实现(while语句也能实现,只是for语句更简洁)

结构简介:

python第二章:控制流

 

python第二章:控制流

 

结果:打印5次结果

python第二章:控制流

 

解析:变量名i 默认从0开始,步长为1,i递增到(但不包括)传递给range函数的整数

range()函数最多有三个参数

当只有一个参数时,则表示终止值(结果为终止值-1),起始值默认0,步长为1

当有两个参数时,第一个参数表示开始值,第二个参数表示终止值,步长默认为1

当有三个参数时,第一个参数表示开始值,第二个参数表示终止值,第三个参数表示步长

9.导入模块

python内部可以调用很多基本的函数,成为内建函数,包括了之前的print(),input(),len()等等。

python还包括一组模块,成为标准库,里面有一些包含特定功能的函数,比如:math模块提供了数据运算相关的函数,random模块提供了随机数相关的函数

在使用一些标准库时,需要通过import语句导入模块

结构:

python第二章:控制流

 

python第二章:控制流

 

输出5次1到10 之间的随机整数

 

10.使用sys.exit()提前结束程序

通过调用sys.exit(),可以让程序终止或者退出,这个函数在sys模块里,所以要先import sys

但是个人感觉,这个函数太霸道了,不建议使用

 

注意:在if语句或者循环语句条件里 0或者0.0或者‘’(空字符串)都被认为是False

上一篇:Python学习笔记之7.5 - 定义有默认参数的函数》》》直接在函数定义中给参数指定一个默认值,默认参数的值应该是不可变的对象


下一篇:Python学习手册之Python对象类型(本人菜鸡,勿喷,谢谢)