詳解Python流程控制語句
流程控制
- 流程:代碼執(zhí)行的過程
- 控制:對代碼執(zhí)行過程的把控
三大結(jié)構
- 順序結(jié)構:代碼默認從上到下,依次執(zhí)行
- 分支結(jié)構:單項分支,雙向分支,多項分支,巢狀分支
- 循環(huán)結(jié)構:while循環(huán)和for循環(huán)
單項分支
語句:
if 條件表達式:
code1
code2
當條件表達式成立時,返回True,執(zhí)行對應的代碼塊
job = "programmer"
if job == "programmer":
print("錢多")
print("話少")
print("*的早")
雙向分支(二選一)
語句:
if 條件表達式:
code1 ..
else:
code2 ...
- 如果條件表達式成立,返回True ,執(zhí)行if這個區(qū)間的代碼塊
- 如果條件表達式不成立,返回False,執(zhí)行else這個區(qū)間的代碼塊
job = "programmer"
if job == "programmer":
print("錢多")
print("話少")
print("*的早")
else:
print("給你小紅花兒~")
多項分支(多選一)
語句:
if 條件表達式1:
code1
elif 條件表達式2:
code2
elif 條件表達式3:
code3
else:
code4
- 如果條件表達式1成立,執(zhí)行對應分支的代碼塊code1,反之則判斷條件表達式2是否成立
- 如果條件表達式2成立,執(zhí)行對應分支的代碼塊code2,反之則判斷條件表達式3是否成立
- 如果條件表達式3成立,執(zhí)行對應分支的代碼塊code3,反之則執(zhí)行else分支,到此程序執(zhí)行完畢
money = False
car = False
house = False
if money == True:
print("你是土豪么???")
elif car == True:
print("你是有一輛蹦蹦嘛???")
elif house == True:
print("你是什么房子啊?")
else:
print("你是個好人~")
巢狀分支
單項分支,雙向分支,多項分支的互相嵌套組合
money = False
car = True
house = True
if money == True:
print("你是土豪么???")
if house == True:
print("你是什么房子啊?")
if car == True:
print("你是有一輛蹦蹦嘛???")
else:
print("其實還可以~")
else:
print("感覺差點意思~")
else:
print("你是個好人~")
循環(huán)結(jié)構
特點:
減少冗余代碼,提升代碼執(zhí)行效率
語法:
while 條件表達式:
code1
書寫三部曲
- 初始化一個變量
- 書寫循環(huán)條件
- 添加自增/自減的值
案例1
# 打印1~100所有數(shù)字 i = 1 while i <= 100: print(i) i += 1
案例2
# 打印1~100的累加和 i = 0 total = 0 while i <= 100: total += i i += 1 print(total)
死循環(huán)
while True:
print("死循環(huán)")
關鍵字的使用
pass(代碼塊中的占位符)
while True: pass
break(終止當前循環(huán))
# 1~10,遇到5終止循環(huán)
i = 1
while i <= 10:
print(i)
if i == 5:
break
i += 1
container(跳過當前循環(huán))
# 打印1~100中不含4的數(shù)字
i = 1
while i <= 100:
strvar = str(i)
if "4" in strvar:
i += 1
continue
print(i)
i += 1
for循環(huán)
循環(huán)/遍歷/迭代,把容器中的元素一個個取出來
while的局限性
# Error
# setvar = {"a", "b", "c"}
# i = 0
# while i < len(setvar):
# print(setvar[i])
# i+=1
for循環(huán)的基本語法
for 變量 in Iterable:
code1
Iterable
Iterable可迭代性數(shù)據(jù)
- 容器類型數(shù)據(jù)
- range對象
- 迭代器
range
range(開始值,結(jié)束值,步長)
區(qū)間為[開始值,結(jié)束值),為左閉右開區(qū)間,右邊的結(jié)束值取不到
總結(jié)
- while:一般用于處理復雜的邏輯關系
- for:一般用于迭代數(shù)據(jù)
- 部分情況下兩個循環(huán)可以互相轉(zhuǎn)換
以上就是詳解Python流程控制語句的詳細內(nèi)容,更多關于Python流程控制語句的資料請關注腳本之家其它相關文章!
相關文章
python opencv實現(xiàn)任意角度的透視變換實例代碼
這篇文章主要介紹了python opencv實現(xiàn)任意角度的透視變換實例代碼,具有一定借鑒價值,需要的朋友可以參考下2018-01-01
Pandas+Numpy+Sklearn隨機取數(shù)的實現(xiàn)示例
使用Python、pandas、numpy、scikit-learn來實現(xiàn)隨機打亂、抽取和切割數(shù)據(jù),文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧2024-03-03
Python+OpenCV實現(xiàn)基于顏色的目標識別
這篇文章主要介紹了利用OpenCV實現(xiàn)基于顏色的目標識別,即讓攝像頭識別到視野范圍內(nèi)的有顏色的氣球并返回每個氣球的中心點坐標,感興趣的可以跟隨小編學習一下2022-01-01
Python使用scipy模塊實現(xiàn)一維卷積運算示例
這篇文章主要介紹了Python使用scipy模塊實現(xiàn)一維卷積運算,結(jié)合實例形式分析了scipy模塊的功能及使用scipy模塊進行一維卷積運算的相關操作技巧,需要的朋友可以參考下2019-09-09
python3使用python-redis-lock解決并發(fā)計算問題
本文主要介紹了python3使用python-redis-lock解決并發(fā)計算問題,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-10-10

