Python學習之三大程序流程結構

一、程序設計流程結構概述

在程序設計語言中,有三種基礎的流程結構順序結構、選擇結構和循環結構。許多簡單或複雜的算法都可以由這三種基本結構組合而成,是學習任何一門編程語言的基礎語法及結構。

二、順序語句

按照代碼執行的先後順序,依次執行,程序中的大多數代碼都是這樣執行的,就可以理解爲說明書的下一步一樣,像時間的飛逝一樣一去不復返,所以真的要好好珍惜時間,大哭!

1、順序語句框圖

順序語句框圖

2、代碼

print("程序開始!")
print("語句1!")
print("語句2!")
print("語句結束!")

代碼演示結果:
在這裏插入圖片描述

三、選擇語句

選擇結構也被稱爲分支結構,也是程序設計中非常重要的基本結構。選擇結構不同於順序結構,有自己特定的語法規則,而且樣式也有好幾個,一般通過一條或多條語句的執行結果來決定執行的代碼塊。在漢語裏面,是充當如果…就…這類轉折語句。

代碼邏輯運算後進行判斷,邏輯運算的結果有兩個:真(True)和假(False),如果滿足條件那麼執行滿足條件的語句裏面,否則執行不滿足語句。而且這類語句和下面的循環語句可以語句間嵌套,內部嵌套。

1、if語句

首先先判斷條件1是否滿足,滿足的話,就進入語句1,執行內容可以多行,用縮進來區分同一範圍。不滿足就直接跳過語句1,執行if語句以外的語句。

(1)語句格式

if 條件1:
…語句1

注意:…是縮進的意思,一般四個空格

(2)語句框圖

在這裏插入圖片描述

(3)代碼

a = 10
if a > 0:
    print("滿足的語句!!!")
    #注意縮進,表示進入滿足語句裏面,是python語言設計的規定
print("不在選擇語句範圍的語句!!!")

代碼演示結果:
在這裏插入圖片描述

2、if…else語句

與上面if語句一樣,但是增加了else語句,當需要在條件1不成立時執行的內容,則可以語句2,所以這個語句是一定要進入if語句裏面的其中一個的,然後在進行if語句之外語句。

(1)語句格式

if 條件1:
…語句1
else:
…語句2

(2)語句框圖

在這裏插入圖片描述

(3)代碼

a = 10
if a > 0:
    print("滿足的語句!!!")
else:
    print("不滿足的語句!!!")
print("不在選擇語句範圍的語句!!!")

代碼演示結果:
在這裏插入圖片描述

3、if…elif…else語句

這個語句在if...else語句中間,添加了一個elif語句,就是當有多個條件時使用,可以理解爲if...else語句在else語句裏的嵌套。else語句可以選用!

建議使用吧!因爲在編寫代碼時很難保證所有的條件都考慮到,所以一些奇葩的條件就可以放在else裏面進行提示,避免程序中斷。

(1)語句格式

if 條件1:
…滿足條件1執行語句
elif 條件2:
…滿足條件2執行語句
else:
…其他情況執行的語句

(2)框圖

在這裏插入圖片描述

(3)代碼

a = 0
if a > 0:
    print("滿足的語句!!!")
elif a == 0:
    print("不滿足if條件,但滿足條件elif的語句!!!")
    #elif可以多個
else:
    print("不滿足if條件,也不滿足條件elif的語句!!!")
print("不在選擇語句範圍的語句!!!")

代碼演示結果:
在這裏插入圖片描述

四、循環語句

循環語句允許我們執行一個語句或語句組多次,循環語句可以在滿足循環條件的情況下,反覆執行某一段代碼,這段被重複執行的代碼被稱爲循環體語句。

當反覆執行循環體,當不需要進入循環體時,判斷條件改爲false,結束循環。否則一直執行循環體裏面的語句。

1、while語句

首先判斷布爾表達式是否滿足條件,如果滿足那麼進入循環體語句,直到布爾表達式不滿足時跳出循環。

注意:在一般情況下,儘量不要讓循環體一直進行下去,容易出現死循環,導致電腦出現死機等情況!

(1)語句格式

while 布爾表達式:
…循環體語句

(2)框圖

在這裏插入圖片描述

(3)代碼

a = 10
while a > 0:
    print("滿足條件的語句!!!")
    a -= 2

代碼演示結果:
在這裏插入圖片描述

2、while…else語句

while語句基礎上加入了else語句,當while語句不滿足布爾表達式時,才能執行else語句裏面的語句2,如果循環體突然中斷,將不能進入else語句。

注意:這裏的“不滿足布爾表達式”與“循環體突然中斷”不一樣

(1)語句格式

while 布爾表達式:
…循環體語句
else:
…語句2

(2)框圖

在這裏插入圖片描述

(3)代碼

a = 10
while a > 0:
    print("滿足條件的語句!!!")
    a -= 1
    if(a == 0):
        break   #在文章後面會講解,這裏先暫時理解爲非正常中斷循環體
else:
    print("正常結束後執行的語句!!!")

print("其他語句!!!")

代碼演示結果:
在這裏插入圖片描述

3、pass關鍵字

在python中pass是空語句,不做任何事情,主要是爲了保持程序結構的完整性,充當佔位語句,否則語句不完整容易報錯,使得程序中斷。

(1)語句格式

pass

(2)代碼

a = 11
if a > 10:
    pass
else:
    print("不打印這句話!!!")

代碼演示結果:
在這裏插入圖片描述

4、continue關鍵字

在python中continue是跳出本次循環體,意思可以理解爲在數數時,如1,2,3,5,6,跳過4這個數字,continue語句也一樣就是不進行一次循環體,跳過去進行下一次循環體。continue語句一般用在循環語句中。

(1)語句格式

continue

(2)代碼

a = 0
while a < 10:
    if a == 5:
        a += 1
        continue
    print(a)
    a += 1

代碼演示結果:
在這裏插入圖片描述

6、break關鍵字

在python中break是終止本次循環,即循環條件沒有False條件或者序列還沒被完全遞歸完,也會停止執行循環語句,意思是當在做某事時被人叫去做別的事了,而不在執行這件事。一般用來終止循環語句。

如果使用嵌套循環,break語句將只終止當前的循環語句,然後繼續執行外面的循環。

注意:continue語句是跳出循環體,而continue語句是跳出循環,兩個語句是不一樣的。

(1)語句格式

break

(2)代碼

a = 0
while a < 10:
    if a == 5:
        break
    print(a)
    a += 1

代碼演示結果:
在這裏插入圖片描述

7、for語句

for語句可以遍歷任何序列的項目,即通過序列索引迭代。配合in關鍵字使用,其中的序列爲可以一個列表或者一個字符串。

(1)語句格式

for 變量 in 序列:
…循環體

(2)框圖

在這裏插入圖片描述

(3)代碼

for i in [1,2,3,4]:
	print(i)

代碼演示結果:
在這裏插入圖片描述

2、for…else語句

for語句基礎上加入了else語句,當for語句序列正常遍歷完時,才能執行else語句裏面的語句2,如果循環體突然中斷,將不能進入else語句。

(1)語句格式

for 變量 in 序列:
…循環體語句
else:
…語句2

(2)框圖

在這裏插入圖片描述

(3)代碼

for i in [1,2,3,4]:
    print(i)
else:
    print("正常遍歷完序列!!!")

代碼演示結果:
在這裏插入圖片描述

8、range函數

range是一個全局函數,一般用來進行遞增的,他的數可以看作是一個等差數列。有三個參數,但是在運行是至少的有一個參數,一般配合for語句使用。

一個參數:表示結束時的數值-1,默認從0開始,是一個前閉後開的區間
兩個參數:第一個表示開始時的數值,第二個表示結束時的數值-1
三個參數:第一個表示開始時的數值,第二個表示結束時的數值-1,第三個表示等差數列的間距d。

(1)語句格式

range(start, stop[, step])

(2)代碼

for i in range(1,10,2):
    print(i)

代碼演示結果:
在這裏插入圖片描述

五、例子

1.打印直角三角

num = int(input("請輸入需要打印的行數:"))
for i in range(1, num+1):
    print("*" * i)

代碼演示結果:
在這裏插入圖片描述
2.九九乘法表

for i in range(1, 10):
	for j in range(1, i+1):
		print("%d * %d = %d \t" % (i, j, (i*j)), end = "")
	print()

代碼演示結果:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章