if条件控制语句
if语句用于条件执行,一般形式如下所示:
1
2
3
4
5
6
|
if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
|
如果 “condition_1” 为 True 将执行 “statement_block_1” 块语句
如果 “condition_1” 为False,将判断 “condition_2”
如果”condition_2” 为 True 将执行 “statement_block_2” 块语句
如果 “condition_2” 为False,将执行”statement_block_3”块语句
Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。
注意
1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
3、在Python中没有switch – case语句。
例如:
1
2
3
4
5
6
7
8
9
|
score = 65
if score >= 90:
print("成绩优秀")
elif score >= 70:
print("成绩良好")
elif score >= 60:
print("成绩及格")
else:
print("成绩不及格")
|
执行以上程序会输出如下结果:
成绩及格
if判断条件还可以简写,只要x是非零数值、非空字符串、非空list等,就判断为True,否则为False。
例如:
1
2
3
|
s = "hello world"
if len(s)>0:
print(s)
|
可以简写为
1
2
3
|
s = "hello world"
if s:
print(s)
|
if语句的嵌套
if语句中还可以嵌入if – elif – else,称为if语句嵌套。
例如:
1
2
3
4
5
6
7
8
9
10
11
12
|
score = 100
if score >= 90:
if score==100:
print("满分")
else:
print("成绩优秀")
elif score >= 70:
print("成绩良好")
elif score >= 60:
print("成绩及格")
else:
print("成绩不及格")
|
执行以上程序会输出如下结果:
满分
while循环语句
Python中while语句的一般形式:
1
2
3
4
|
while 判断条件:
语句
else:
语句
|
只要判断条件为True,while语句重复执行。如果判断条件False则执行else子句(如果存在)并终止循环。
例如:计算1 到 10 的总和。
1
2
3
4
5
6
7
|
start = 1
sum = 0
while start <= 10:
sum += start
start += 1
else:
print("1 到 10 的总和:",sum)
|
执行以上程序会输出如下结果:
1 到 100 的总和: 55
for 语句
for语句用于迭代序列的元素(例如字符串,元组或列表)或其他可迭代对象:for循环的一般格式如下:
1
2
3
4
|
for <variable> in <sequence>:
<statements>
else:
<statements>
|
例如,打印列表的内容。
1
2
3
4
5
|
list = ['a','b','c']
for i in list:
print(i)
else:
print("for循环结束")
|
执行以上程序会输出如下结果:
break语句
break语句用于跳出 for 和 while 的循环体,不执行else语句。
例如:
1
2
3
4
5
6
7
8
9
10
11
|
start = 1
sum = 0
while start <= 10:
sum += start
start += 1
if start==5: # 退出while循环,不执行后面的else子句
break
print("start的当前值:",start)
else:
print("1 到 10 的总和:",sum)
print("break语句执行完毕")
|
执行以上程序会输出如下结果:
1
2
3
4
|
start的当前值: 2
start的当前值: 3
start的当前值: 4
break语句执行完毕
|
例如:
1
2
3
4
5
6
7
8
|
list = ['a','b','c']
for i in list:
if i == 'b':
break
print(i)
else:
print("for循环结束")
print("break语句执行完毕")
|
执行以上程序会输出如下结果:
continue语句
continue语句用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。
例如,计算1 到 10 的总和:
1
2
3
4
5
6
7
8
9
10
11
|
start = 1
sum = 0
while start <= 10:
sum += start
start += 1
if start==5: #不执行后面的print语句
continue
print("start的当前值:",start)
else:
print("1 到 10 的总和:",sum)
print("continue语句执行完毕")
|
执行以上程序会输出如下结果:
1
2
3
4
5
6
7
8
9
10
11
|
start的当前值: 2
start的当前值: 3
start的当前值: 4
start的当前值: 6
start的当前值: 7
start的当前值: 8
start的当前值: 9
start的当前值: 10
start的当前值: 11
1 到 10 的总和: 55
continue语句执行完毕
|
例如:
1
2
3
4
5
6
7
8
|
list = ['a','b','c']
for i in list:
if i == 'b':
continue
print(i)
else:
print("for循环结束")
print("continue语句执行完毕")
|
执行以上程序会输出如下结果:
1
2
3
4
|
a
c
for循环结束
continue语句执行完毕
|
break语句和continue语句操作的都是自身所属的循环。例如,循环A里嵌套一个循环B,则B循环里的break语句,只能跳出B循环,不能跳出最外层的A循环。continue语句也是一样的。
例如:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
list_num = [1,2,3,4]
list_letter = ['a','b','c']
for i in list_num:
print(i)
for j in list_letter:
print(j)
if j == "b":
break #只能跳出内层循环
else:
print("内层循环结束")
else:
print("外层循环结束")
|
执行以上程序会输出如下结果:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
1
a
b
2
a
b
3
a
b
4
a
b
外层循环结束
|
转载请注明本网址。