python3之流程控制

一、流程控制

Python支持两种基本流程控制结构

分支结构: 根据条件选择不同的代码块执行
循环结构: 根据循环条件重复代码块

if语句用于分支结构
for-in, while用于循环结构
break, continue用于循环控制

二 、分支结构

1 if条件判断

格式

基本格式
if condition_test :
    do something
    
if-else格式
if condition_test :
    do something
else :
    do something

if-else嵌套格式
if condition_test :
    do something
elif condition_test :
    do something
...
else :
    do something
 
其中
elif=else if 
可以有零个或多个elif语句

2 assert断言

格式

assert condition_test, '对assert的一些说明'

condition_test为Ture时,程序继续向下执行
否则,程序引发AssertionError错误,并显示对assert的说明(如果有的话)

示例

n = -2
assert n > 0, 'n的值必须大于0'
print(n)

引发AssertionError错误,并显示'n的值必须大于0'

三、循环结构

1 while循环

格式

while condition_test :
    do something
else :
    do something
    
其中
else块可选

示例

list_1 = list(range(10))
i = 0
while i < len(list_1):
   print(list_1[i])
   i += 1
else :
    print("列表已经遍历完")
    print(list_1)

2 for-in循环

格式

for var in iterable :
    do something
else :
    do something

其中
var: 变量名
iterable: 任意可迭代对象:字符串,列表,元组,字典,range
else块可选

示例

遍历列表(元组,字符串,range都一样)

list_1 = ['a', 'b', 4, 7, 'u', 'j']
for i in list_1 :
    print(i)

遍历字典

dict_1 = {'key1':11, 'key2':22, 'key3':33, 'key4':44}

#遍历字典的key-value对
for key,value in dict_1.items():
    print('key:',key)
    print('value:',value)
    print(dict_1[key])
    
#遍历字典的key
for key in dict_1.keys():
    print('key:',key)
    print(dict_1[key])
    
#遍历字典的value
for value in dict_1.values():
    print('value:',value)

3 for表达式(列表推导式)

返回的是列表

格式

[表达式 for 循环计数器 in iterable]

示例

[ pow(x,2) for x in range(10) ]
返回0-9每个数的平方组成的列表

四、循环控制

pass
空语句,不做任何事情,一般用做占位语句

continue
结束当前循环,开始下一次循环

break
结束循环
原文地址:https://www.cnblogs.com/gudanaimei/p/13463753.html