今天要学习的是控制流,简单来说就是控制代码执行的流程;
基本语法:
if 条件:
代码块1
else:
代码块2
if
条件的真假,真则输出代码块1,否则输出代码块2;0
、""
空字符串、()
空元组、[]
空列表、{}
空字典、None
等空值的都为 False
;而像1
、"Str"
字符串等有值的都为 True;基本语法:
if 条件1:
代码块1
elif 条件2:
代码块2
else:
代码块3
if
和 else
以外,再加上不定量的 elif
,执行顺序是自上而下,满足条件则执行基本语法:
if 条件1:
代码块1
elif 条件2:
if 条件2.1:
代码块2.1
else:
代码块2.2
else:
代码块3
elif
条件2下面在嵌套一个新的 if
控制流;(1)while
循环
例:
a = 5
while a > 1:
print('yes')
a -= 1
while
循环 a > 1
的条件时,则开始循环,执行print语句输出yes;(2)while else
循环
例1:
a = 5
while a > 1:
print('yes')
a -= 1
else:
print('循环结束')
例2:
a = 5
while a > 1:
print('yes')
a -= 1
if a == 2:
break
else:
print('循环结束!')
while else
循环和 while
循环不同的地方在于,如果是正常终止的循环,也就是像例1一样的没有 break的循环,最后一次循环完毕后,不仅会输出4个yes,还会接着执行 else
中的语句,输出“循环结束”;if
条件 和 break
语句时,则只要满足了 if
条件循环就会直接终止,不再执行任何语句,也就是跳出循环;(3)for循环
例:
for i in range(5):
print(i)
if
循环条件时,则循环一直执行,不满足则退出;0,1,2,3,4
;range
函数是一个可迭代对象,比如上述 range
(5)会生成从0到5区间( 即[0,9]或[0,10) )的所有整数,range就像数学中的区间 一样,左边是闭区间,右边是开区间;(4)for else循环
例:
i = None
for i in range(5):
print(i)
else:
print(i)
for else
循环和 while else
循环有点类似,如果是正常退出的,当执行完 for
循环的最后一次循环时,会接着循环 else
里面的语句,如上述例子中,在输出了1,2,3,4
之后会继续执行else中的语句,此时i = 4 ,所以会继续输出一个4;(5)continue 语句
例:
#方法一
for i in range(1,11):
if i % 2:
print(i)
#方法二
for i in range(1,11):
if i % 2:
continue
print(i)
continue
关键字,当条件为真的时候,会执行 continue
,直接进行下一次新的循环,不会再继续执行 continue
后面的语句;continue
不会执行,而是会执行 continue
后面的语句;1,3,5,7,9
,例2正好相反,输出:2,4,6,8,10
;range
类的使用,range
(start,stop[,step]) -> range object。如果直接输出 range
,会实现一个魔术方法,str()
或者 repr()
方法,返回自己本身。如果想打印 range
里面的内容,可以把 range
包装成列表list
的形式;(6)break 语句
例:
flag = 0
for i in range(1,100):
if i % 3:
print(i)
flag += 1
if flag >= 5:
break
break
关键字和 continue
有点不同,如果条件为真的时候,会执行 break
,直接跳出循环;break
,而是执行 break
后面的语句;1,2,4,5,7
continue
和 break
只能影响当前所在的这一层循环,如果是在内部循环中进行 continue
和 break
,那么外层循环不会受到影响;本文参考自侠课岛(9xkd.com)Python同学计划