Python控制流程

Python流程控制

程序中的语句默认自上而下执行,当时可以通过一些特定的语句可以更改语句的执行顺序,使之产生跳跃、回溯等,进而实现流程控制。

1.条件语句

1.1 if 语句

if (是否) :

格式:
if 条件语句:
    代码块(与 if 保持一个缩进)
    
缩进:一个Tab键或者4个空格

判断条件是否为真,如果判断为真就运行 if 管理里面的代码

a = input("你要不要学习")

if a == "要":
    print("那么我们一起去图书馆")

1.2 if else 语句

if else或者):

格式:
if 条件语句:
	代码块
else:
	代码块
	
就是二选一

判断是否为真True,如果判断为真就是运行【if】结构里面的代码块,如果判断为假就运行【else】的代码块

a = input("你要不要学习")

if a == "要":
    print("那么我们一起去图书馆")
else:
    print("那么再见,我去图书馆了")

1.3 if - elif - else 语句

if elif(否者是否) else

elif => else if(python是不能写成这样子)
格式:
if 条件语句:
	代码块
	
elif 条件语句:
	代码块
	。
	。
	。
else:
	代码块

属于多分支控制流程,可判断多个条件,每个条件都有独立的代码块,也是按照上面的流程进行流程判断

比如:我们高考分数录取学校,根据不同的分数线选择不同的学校

result = 600

if result > 660:
    print("选择北大或者清华")
    
elif result > 600:
    print("请选择山东大学")
   
else:
    print("请选择其他学校或者复读")

2.循环语句

2.1 for 语句

1.for 的循环语句

格式:
for 变量 in 可迭代序列:
	代码块
	
可迭代序列:字符串,列表,元祖,字典,集合

就是可以用一个变量来获取一个序列里面的数值。通常用在遍历里面

a = "12345"
b = (1, 2, 3, 4, 5)
c = [1, 2, 3, 4, 5]
d = {"1": 2, "2": 3, "3": 4}
e = {1, 2, 3, 4, 5}

for i in a:
    print("字符串", i)

print()

for i in b:
    print("元组", i)

print()

for i in c:
    print("列表", i)

print()

for i in d:
    print("字典", d[i])

print()

for i in e:
    print("集合", i)

print()
i是取值的变量,也就是用来取可迭代序列的值

2.range( )

range():是一个可以生成一个由整数组成的可迭代对象,也就是为支持for循环遍历的对象。

格式:
range (start , end, length)
    start:开始值 # 没设置默认从0开始
    end:设置终点的位置,但不输出end值
    # 这是一个是个左闭右开的集合,【a,b)
    length,迭代的长度 # 默认为1
拓展:
    print(end = '/n') 默认是换行输出
for i in range(101):
    print(i,end=",") # 输出 0到100 用逗号隔开

for i in range(1,101):
    print(i,end=",") # 输出 1到100 用逗号隔开
    
for i in range(2,101,2):
    print(i, end=",") # 输出1到100的偶数 用逗号隔开
    
for i in range(1,101,1):
    print(f'已经抄写了{i}遍作业了') # 输出1到100遍

2.2 while 语句

和for的作用类型,也是用来循环获取里面的数值,while是如果满足就会一直循环,循环到不满足了条件才跳出循环

格式:
while 条件语句:
	代码块
	
注意条件语句一定要有一个false返回值,如果一直为真Ture就会一直循环下去,就是死循环
a = 1
# 循环1到100
while a <= 100:
    print(f'已经抄写了{a}遍作业了') 
   	a += 1 

    
# 死循环
while 1:
    print("1",end=",")

2.3 循环嵌套

一般是双嵌套循环,就是我们两个循环嵌套起来,两个for循环或者两个while循环,或者一个for循环+whlie循环

# while 嵌套 双循环
while 条件语句:
    while 条件语句:
        ...
        代码块
        ...
# for 嵌套 双循环
for i in 可迭代序列:
    for i in 可迭代序列:
        ...
        代码块
        ...
# while 和 for 并用 三循环
for i in 可迭代序列:
    while 条件语句:
        for i in 可迭代序列:
            ...
            代码块
            ...

例子比如打印三角形

# 我们是需要一个循环控制*输出,一个循环控制空格输出
for i in range(1,5): # 控制行数
    for j in range(1,i+1):# 控制*号的数量,因为i是为end值,end是不会输出的,我们需要i+1保证end末端输出
        print("*", end="")
    
    print("")

运行结果如下:

*
**
***
****

3 跳转语句

3.1 break 语句

break 用于结束循环,若循环运行到break语句时,就会结束循环,若循环嵌套使用break语句 ,在执行到break语句时就会结束本层循环。

for i in range(1,5):
    if i == 3:
        break
    print(i,end = ' ') # 结果为1 2 
    
for i in range(1,5):
    print(i,end = ' ') # 结果为1 2 3 4 
for i in range(1,5):
    while i<3 :
        if i == 2:
        	break # 结束 while循环
        print(i,end = ' ')
        i+=1  # 结果为1

3.2 continue 语句

continue 满足条件的话,跳出此次循环。

for i in "python":
    if i == '0': # 跳出i等于o的这次循环
        continue
    print(i,end = ' ') # 结果为p y t h n 

你可能感兴趣的:(python)