欢迎您进入老吴的博客,如有联系请加我QQ:2367214814
导言:
在进行程序设计的时候,我们会经常进行逻辑判断,根据不同的结果做不同的事,或者重复做某件事,我们对类似这样的工作称为流程控制
6.1 程序执行三种方式概述
程序执行有三种方式:顺序执行,选择执行,循环执行。
6.1.1 流程控制之--if。
假如把写程序比做走路,那我们到现在为止,一直走的都是直路,还没遇到过分叉口,想象现实中,你遇到了分叉口,然后你决定往哪拐必然是有所动机的。你要判断那条岔路是你真正要走的路,如果我们想让程序也能处理这样的判断怎么办? 很简单,只需要在程序里预设一些条件判断语句,满足哪个条件,就走哪条岔路。这个过程就叫流程控制。
6.1.2 生活中的判断场景
1. 进入厕所
- 上网吧
小结:
如果某些条件满足,才能做某件事情,而不满足时不允许做,这就是所谓的判断
不仅生活中有,在软件开发中“判断”功能也经常会用到
6.2 if判断语句介绍
6.2.1 if判断语句语法(单一条件))
if语句是用来进行判断的,其使用格式如下:
if 要判断的条件:
条件成立时,要做的事情 (代码块)
注意:
代码的缩进为一个tab键,或者4个空格
6.2.2 if语句的应用
age = 18
print("------if判断开始------")
if age >= 18:
print("我已经成年了,可以做成年人做的事情了")
print("------if判断结束------")
运行结果:
小结:
demo仅仅是age变量的值不一样,结果却不同;能够看得出if判断语句的作用:就是当满足一定条件时才会执行那块代码,否则就不执行那块代码
6.2.3 if...else..
想一想:在使用if的时候,它只能做到满足条件时要做的事情。那万一需要在不满足条件的时候,做某些事,该怎么办呢?
答:if...else..
<1>if-else的使用格式
if 条件:
满足条件时要做的事情1
满足条件时要做的事情2
满足条件时要做的事情3
...(省略)...
else:
不满足条件时要做的事情1
不满足条件时要做的事情2
不满足条件时要做的事情3
...(省略)...
if-else案例:
If...else案例一 大学有女朋友和没有女朋友的区别
have = 1 # 用1代表有女朋友,0代表没有女朋友
if have == 1:
print("周末可以和女朋友图书馆相会了")
else:
print("没有女朋友,在寝室玩游戏")
案例二:是否是白富美
参考代码:
color = input("你白么?") #白 或者 黄
money = int(input("请输入你的财产总和:")) #输入1000
beautiful = input("你美么?")#美 或者 普通
#if 白 并且 富 并且 美:
#if 白 and 富 and 美:
if color=="白" and money>1000000 and beautiful=="美":
print("白富美....")
print("真的让人羡慕啊!!!")
else:
print("矮矬穷....")
print("屌丝一个....")
# 下面的代码不受if 语句的影响
print("我不受任何语句的影响")
6.2.4 if...elif…else...
elif的使用格式如下:
if <条件1>:
<语句1>elif <条件2>:
<语句2>elif <条件3>:
<语句3>...else:
<语句n>
说明:
当xxx1满足时,执行事情1,然后整个if结束
当xxx1不满足时,那么判断xxx2,如果xxx2满足,则执行事情2,然后整个if结束
当xxx1不满足时,xxx2也不满足,如果xxx3满足,则执行事情3,然后整个if结束
参考代码:
score = float(input("请输入您的考试分数:"))
if score >= 90 and score <= 100:
print('本次考试,等级为A')
elif score >= 80 and score < 90:
print('本次考试,等级为B')
elif score >= 70 and score < 80:
print('本次考试,等级为C')
elif score >= 60 and score < 70:
print('本次考试,等级为D')
elif score >= 0 and score < 60:
print('本次考试,等级为E')
6.2.5 if嵌套的格式
if 条件1:
满足条件1 做的事情1
满足条件1 做的事情2
...(省略)...
if 条件2:
满足条件2 做的事情1
满足条件2 做的事情2
...(省略)...
说明
外层的if判断,也可以是if-else
内层的if判断,也可以是if-else
根据实际开发的情况,进行选择
<2>if嵌套的应用
事业有成案例
小结
if 语句可以相互嵌套
if 嵌套,可以嵌套多层,但是一般嵌套两层层就行了,如果嵌套多层的话便维护代码,如果需要嵌套多层,肯定可用用其他方式代替多层嵌套这种方式。
6.3 while循环
while循环语句介绍
一般情况下,需要多次重复执行的代码,都可以用循环的方式来完成
循环不是必须要使用的,但是为了提高代码的重复使用率,所以有经验的开发者都会采用循环
6.3.1 while循环的格式
while 条件:
条件满足时,做的事情1
条件满足时,做的事情2
条件满足时,做的事情3
...(省略)...
程序执行有三种方式:顺序执行,选择执行,循环执行。
生活中的循环场景
跑道
6.3.2 理解循环案例代码
While循环的写法
num = 1
while num <= 10:
print(num)
num += 1
i+=1别忘记写,否则条件永远满足,一直执行
6.3.3 while循环应用
计算1~100的累积和(包含1和100)
参考代码如下:
#coding=utf-8
i = 1
sum = 0
while i <= 100:
sum = sum + i
i += 1
print("1~100的累积和为:%d"%sum)
5050
6.3.4 while循环嵌
while嵌套的格式
前面学习过if的嵌套了,想一想if嵌套是什么样子的?
类似if的嵌套,while嵌套就是:while里面还有while
while 条件1:
条件1满足时,做的事情1
条件1满足时,做的事情2
条件1满足时,做的事情3
...(省略)...
while 条件2:
条件2满足时,做的事情1
条件2满足时,做的事情2
条件2满足时,做的事情3
...(省略)...
案例1: while嵌套应用一打印三角形
打印矩形
* * * * *
* * * * *
* * * * *
* * * * *
* * * * *
参考代码:
案例2:用一个while循环打印矩形
i = 1
while i <= 5:
print("*****")
i += 1
执行效果
案例3:使用while嵌套打印矩形
i = 1
while i <= 5:
j = 1
while j <= 5:
print("*",end="")
j += 1
#切成被5个星号一行
print("")
i += 1
执行效果
案例4 :打印三角形
要求:打印如下图形:
*
* *
* * *
* * * *
* * * * *
参考代码:
i = 1
while i <= 5:
j = 1
while j <= i:
print("*",end="")
j += 1
print("")
i += 1
只要把打印矩形的基础上把内部的while循环的条件由j<=5修改成 j<=i即可
运行如图:
打印三角形扩展
i = 1
while i <= 5:
num = int(input("请输入这行要打印多少个*"))
j = 1
while j <= num:
print("*",end="")
j += 1
#切成被5个星号一行
print("")
i += 1
执行效果
while嵌套应用二:九九乘法表
参考代码:
i = 1
while i <= 9:
j = 1
while j <= i:
print("%d*%d=%d " % (j,i,j*i),end="")
j += 1
print("")
i += 1
添加制表符
#打印1~10之间的偶数
思路:while循环嵌套if判断语句,代码如图:
i = 1
while i <= 10:
if i%2==0:
print("i==%d" % i)
i += 1
运行效果:
11. for循环语句
像while循环一样,for可以完成循环的功能。
在Python中 for循环可以遍历任何序列的项目,如一个列表、字符串、元组等等。
6.4 for循环的格式
Python 中的循环语句有 2 种,分别是 while 循环和 for 循环,前面章节已经对 while 做了详细的讲解,本节给大家介绍 for 循环,它常用于遍历字符串、列表、元组、字典、集合等序列类型,逐个获取序列中的各个元素。
for 临时变量 in 列表或者字符串等:
循环满足条件时执行的代码
else:
循环不满足条件时执行的代码
6.4.1 for循环中的break
普通的循环示例如下:
name = 'Python'
for x in name:
print('----')
print(x)
运行结果:
带有break的循环加if语句示例如下:
name = 'Python'
for x in name:
print('----')
if x == 't':
break
print(x)
运行结果:
6.4.2 while循环中的break
普通的循环示例如下:
i = 0
while i< 5:
i = i+1
print('----')
print(i)
运行结果:
带有break的循环示例如下:
i = 0
while i < 10:
i = i+1
print('----')
if i==5:
break
print(i)
运行结果:
While 循环扩展:
while ... else ..
与其它语言else 一般只与if 搭配不同,在Python 中还有个while ...else 语句
while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止的话,就会执行else后面的语句
如果执行过程中被break啦,就不会执行else的语句啦
count = 0
while count <= 5 :
count += 1
if count == 3:break
print("Loop",count)
else:
print("循环正常执行完啦")
print("-----out of while loop ------")
break小总结
break的作用:用来结束整个循环
6.4.3 continue
for循环中的continue
带有continue的循环示例如下:
name = 'Python'
for x in name:
print('----')
if x == 't':
continue
print(x)
运行结果:
while循环中的continue
带有continue的循环示例如下:
i = 0
while i < 10:
i = i+1
print('----')
if i==5:
continue
print(i)
运行结果:
总结:
continue的作用:用来结束本次循环,紧接着执行下一次的循环
break的作用:用来结束整个循环