流程控制语句
流程控制语句用来实现对程序流程的选择、循环和返回等进行控制,Python中主要的流程控制包括if(判断) 、 for(循环) 、 while(循环)、break(跳出) 、 continue(继续)
- 程序块与作用域:Python中用冒号“:”作为程序块标记关键字,用缩进同时表达程序块和作用域
- 技巧:pass语句用于需要写代码、但实际什么也不做的场合
1、判断语句
if 语句
Python程序语言指定任何非0和非空(null)值为true,0 或者 null为false
[图片上传失败...(image-8a068e-1587521152830)]
场景1
if expression1:
block_for_True
场景2
if expression1:
block_for_True
else:
block_for_False
场景3
python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现
if expression1:
block_for_expression1
elif expression2:
block_for_expression2
elif expression3:
block_for_expression3
else:
block_for_False
if语句嵌套
if expression1:
if expression11: block_for_expression11
elif expression12: block_for_expression12
...
elif expression2:
block_for_expression2
else:
block_for_False
2、循环语句
[图片上传失败...(image-1ccb8c-1587521152830)]
2.1、 for语句
for element in iterable:
repeat_block
else:
...
# 最后一次循环后招待else子句,但平时很少用else
案例
for letter in 'Python': # 第一个实例
print '当前字母 :', letter
fruits = ['banana', 'apple', 'mango']
for fruit in fruits: # 第二个实例
print '当前水果 :', fruit
print "Good bye!"
Python for 循环嵌套语法
for iterating_var in sequence:
for iterating_var in sequence:
statements(s)
statements(s)
- 主要用于遍历/循环 序列或者集合、字典
- 语义为:针对iterable(集合)的每个元素执行repeat_block,在repeat_block中可以用element变量名来访问 当前的元素。
- iterable可以是Sequence(序列)类型簇、集合或迭代器等.
2.2、循环语句------while
[图片上传失败...(image-bdb7ea-1587521152830)]
[图片上传失败...(image-895596-1587521152830)]
while 判断条件:
执行语句……
else:
执行语句……
案例
count = 0
while (count < 9):
print 'The count is:', count
count = count + 1
print "Good bye!"
Python while 循环嵌套语法
while expression:
while expression:
statement(s)
statement(s)
#案例
i = 2
while(i < 100):
j = 2
while(j <= (i/j)):
if not(i%j): break
j = j + 1
if (j > i/j) : print i, " 是素数"
i = i + 1
print "Good bye!"
3、break及continue语句
3.1、break--------跳出当前循环
[图片上传失败...(image-3645c2-1587521152830)]
for letter in 'Python': # 第一个实例
if letter == 'h':
break
print '当前字母 :', letter
#break语句跳当前循环,中断
3.2、continue-------跳过循环体中剩余的操作
[图片上传失败...(image-29ff43-1587521152830)]
for letter in 'Python': # 第一个实例
if letter == 'h':
continue
print '当前字母 :', letter
#continue跳过当前子循环,继续
3.3、range-------生成序列
for x in range(0,10,2):
print(x,end=" | ")