python - 控制流(if、for、while)
在python中,有3种控制流语句:if、for 和 while
1、if语句:
语法:if... elif... else (python中不存在switch语句)
1 nn = 100 2 a = int(input('please input a number')) # input()以字符串的形式返回用户输入的字符 int()将input()返回的字符,转换成int型的数字 3 4 if a == nn: # 尾部的冒号,说明会有一个语句块在后面 5 print('you are right') 6 elif a > nn: 7 print('it\'s too big') 8 else: 9 print('it\'s too small')
2、for语句
语法:for... in...
在一系列对象上进行迭代(即遍历序列中的每一个项目)例如:for i in range(1, 5) 等价于 for i in [1, 2, 3, 4],依次将队列里的每个数字(或对象)分配给i
1 for i in range(1, 5): 2 print(i) 3 else: # else可选,总会在for循环结束后开始执行,除非遇到break (如果for循环中有break被执行,则else中的print不会被执行) 4 print('for runs over')
in后,可以是任何类型对象的队列
例1:
for s in 'hello': # 分5行,分别打印 h e l l o print(s)
例2:
fruits = ['apple', 'banana', 'orange'] for fruit in fruits: # 分三行分别打印 apple banana orange print(fruit)
例3:
for i in range(5): # 分5行,分别打印 0 1 2 3 4 print(i)
例4:
for i in range(1, 10, 2): # 分5行,分别打印 1 3 5 7 9 print(i)
ps:ragne(start, end [,step]) start表示起始位置,end表示结束位置,step表示步长
例5:
1 my_map = { 2 'name':'zhangsan', 3 'addr':'beijing', 4 'age':'23' 5 } 6 7 lists = [value for value in my_map.values()] # 将每次循环得到的值,放入列表中 8 9 print(lists) # 打印['zhangsan', 'beijing', '23']
3、while语句
1 # while 语句 2 number = 100 3 running = True 4 5 while running: # 能在条件为真的前提下重复执行某块语句 6 a = int(input('please input your number')) 7 if a == number: 8 print('you are right') 9 running = False 10 else: 11 print('guess again') 12 else: # else从句,为可选,总是被执行,除非通过break语句中断循环 13 print('while is over') 14 15 print('Congratulations!')
4、break 和continue
1 # break 终止全部循环 2 # 相应循环中的else块都将不会被执行 3 4 # continue 终止当次循环,继续下一次循环