4.1 条件判断语句
4.1.1 if语句的使用
if语句的语法格式:
if 要判断的条件:
条件成立时,要做的事情
4.1.2 if…else… 语句的使用
if… else…语句的语法格式:
if 条件:
满足条件时的操作
else:
不满足条件时的操作
4.1.3 if…elif…elif…else…语句的使用
if…elif…elif…else…语句的语法格式:
if xxx1:
事情1
elif xxx2:
事情2
elif xxx3:
事情3
else:
以上操作不满足时的操作
4.1.4 if语句的嵌套
if语句的嵌套格式
if 条件1:
满足条件1 做的事情1
满足条件1 做的事情2
if 条件2:
满足条件2 做的事情1
满足条件2 做的事情2
4.1.5 if语句练习——猜拳游戏
import random
player = input('请输入:剪刀(0) 石头(1) 布(2):')
player = int(player)
# 产生随机整数:0、1、2 中的某一个
computer = random.randint(0,2)
# 用来进行测试
#print('player=%d,computer=%d',(player,computer))
if ((player == 0) and (computer == 2)) or ((player ==1) and (computer == 0)) or ((player == 2) and (computer == 1)):
print('获胜,哈哈,你太厉害了')
elif player == computer:
print('平局,要不再来一局')
else:
print('输了,不要走,洗洗手接着来,决战到天亮')
4.1.6 if语句注意事项
-
区间比较
在Python中允许类似于 `5 的写法,这种写法在很多编程语言里都是不允许的,需要使用逻辑与运算符进行连接。
-
三元运算符
格式:
变量 = 值1 if 条件 else 值2
当条件成立时把 值1 赋值给变量,条件不成立时把 值2 赋值给变量,其实就是对if…else 语句的一种简写。 -
自动类型转换
if 语句需要一个判断条件,这个判断条件的结果需要一个布尔值。如果此时输入的判断条件不是一个布尔值,在代码执行的过程中,会将这个值自动转换成为一个布尔值。
提示:在Python中,转换成为布尔值时,只有
0,"",'',None,(),{},[]
会被转换成为False,其他都会被转换成为True
4.2 循环语句
4.2.1 while循环的使用
while语法格式
while 判断条件:
代码块
4.2.2 break和continue
- break可以结束整个循环
- continue结束本次循环,开始下一轮循环
注意点:
- 在Python中,break和continue只能用于循环语句中。
- break和continue在嵌套循环中使用时,只对最内层循环有效
4.2.3 循环嵌套
while嵌套的格式
while 条件1:
外循环代码块
while 条件2:
内循环代码块
**循环一旦开始,则要执行到条件2不满足,才会继续执行外循环的代码 **
i = 0 # 内外循环的控制变量不能一样
while i < 5:
j = 0 # 内循环的控制变量必须要在外循环里初始化
while j < 5:
print('j= %d' % j)
j += 1
print('i= %d' % i)
i += 1
#九九乘法表
for i in range(1, 10):
for j in range(1, n+1):
print('%d * %d = %d \t'%(i, j , i*j), end='')
print()
4.2.4 for循环
for循环的语法格式
for 临时变量 in 列表或者字符串等可迭代对象:
循环满足条件时执行的代码
for循环可以用于字符串遍历、打印数字。
range的使用:
range可以生成数字供for循环遍历,可以传递三个参数,分别表示起始、结束、步长。
# 1) range(n) :产生[0,n-1)的数字序列
for i in range(3):
print(10)
# 2) range(m,n) :产生[m,n)的数字序列(m<n,且m,n是整数)
for i in range(5, 11):
print(i)
# 3)range(m,n,step) :产生[m,n)以step为步长的数字序列(step可以为负值,产生一个递减的数列,此时m>n)
for i in range(1, 101, 2):
print(i)
4.2.5 循环配合if的使用
在python中,循环语句还可以和else语句联合使用。
while…else…语法结构
while 判断条件:
条件成立时,循环体代码
else:
条件不成立时,执行的代码
一般情况下,循环语句和else共同出现时,在循环语句里都会配合break语句来使用。
i = 0
while i < 10:
if i == 5:
break
i += 1
else:
print('循环条件不成立时执行的代码')
#以上代码,else语句不会执行,因为在i=5时,break语句生效,推出整个while循环。