分支语句
条件分支语句是通过一条或多条语句(判断条件)的执行结果(True/False)来决定执行哪个分支的代码块。Python中提供的分支语句为:if…else语句,没有提供switch…case语句。if…else语句有以下几种形式:
单分支:
if 判断条件:
代码块
如果单分支语句的代码块只有一条语句,可以把if语句和代码写在同一行:
if 判断条件: 一句代码
实例:判断指定的uid是不是root用户
uid = 0
if uid == 0:
print("root")
输出结果:root
双分支:
if 判断条件:
代码块
else:
代码块
实例:根据用户id打印用户身份
uid = 100
if uid == 0:
print("root")
else:
print("Common user")
输出结果:Common user
多分支:
if 判断条件1:
代码块1
elif 判断条件2:
代码块2
...
elif 判断条件n:
代码块n
else:
默认代码块
实例:根据学生分数打印字母等级
score = 88.8
level = int(score % 10)
if level >= 10:
print('Level A+')
elif level == 9:
print('Level A')
elif level == 8:
print('Level B')
elif level == 7:
print('Level C')
elif level == 6:
print('Level D')
else:
print('Level E')
输出结果:Level B
循环语句
1. while循环
基本形式
while循环语句的基本形式如下:
while 判断条件:
代码块
当给定的判断条件的返回值的真值测试结果为True时执行循环体的代码,否则退出循环体。
实例:循环打印数字0-9
count = 0
while count <= 9:
print(count, end=' ')
count += 1
输出结果:0 1 2 3 4 5 6 7 8 9
while死循环
当while的判断条件一直为True时,while循环体中代码就会永远循环下去。
while True:
print("这是一个死循环")
输出结果:
这是一个死循环
这是一个死循环
这是一个死循环
...
此时可以通过 Ctrl + C
终止运行。
while…else
语句形式:
while 判断条件:
代码块
else:
代码块
else中的代码块会在while循环正常执行完的情况下执行,如果while循环被break中断,else中的代码块不会执行。
实例1:while循环被中断的情况(else中的语句不会被执行))
count = 0
while count <=9:
print(count, end=' ')
if count == 5:
break
count += 1
else:
print('end')
输出结果:0 1 2 3 4 5
2. for循环
for循环通常用于遍历序列(如list、tuple、range、str)、集合(如 set)和映射对象(如dict)。
基本形式
for循环的基本格式:
for 临时变量 in 可迭代对象:
代码块
实例:遍历打印一个list中的元素
names = ['Tom', 'Peter', 'Jerry', 'Jack']
for name in names:
print(name)
对于序列,也通过索引进行迭代:
names = ['Tom', 'Peter', 'Jerry', 'Jack']
for i in range(len(names)):
print(names[i])
执行结果:
Tom
Peter
Jerry
Jack
for…else
与while…else基本一致,不再赘述。
3. 循环控制语句
循环控制语句可以更改循环体中程序的执行过程,如中断循环、跳过本次循环。
循环控制语句break 说明终止整个循环
循环控制语句contine 说明跳过本次循环,执行下一次循环
循环控制语句pass 说明pass语句是个空语句,只是为了保持程序结构的完整性,没有什么特殊含义。pass语句并不是只能用于循环语句中,也可以用于分支语句中。
实例1:遍历0-9范围内的所有数字,并通过循环控制语句打印出其中的奇数
for i in range(10):
if i % 2 == 0:
continue
print(i, end=' ')
输出结果:1 3 5 7 9
实例2:通过循环控制语句打印一个列表中的前3个元素
names = ['Tom', 'Peter', 'Jerry', 'Jack', 'Lilly']
for i in range(len(names)):
if i >= 3:
break
print(names[i])
输出结果:
Tom
Peter
Jerry
4. 循环嵌套
循环嵌套是指:在一个循环体里面嵌入另一循环。
实例1:通过while循环打印99乘法表
j = 1
while j <= 9:
i = 1
while i <= j:
print('%d*%d=%d' % (i, j, i*j), end='\t')
i += 1
print()
j += 1
实例2:通过for循环打印99乘法表
for j in range(1, 10):
for i in range(1, j+1):
print('%d*%d=%d' % (i, j, i*j), end='\t')
i += 1
print()
j += 1
输出结果:
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81