5.if分支和while-for迴圈
阿新 • • 發佈:2020-11-28
1.if分支結構:if(單項分支,雙項分支,多項分支,巢狀)
1.1單項分支:一個if
if 條件表示式:
程式碼塊
# 條件成立執行程式碼塊
1.2雙項分支:if else(二選一)
if 條件表示式:
程式碼塊1
esle:
程式碼塊2
1.3多項分支:if elif elif .......(多選一)
if 條件表示式1:
程式碼塊1
elif 條件表示式2:
程式碼塊2
elif 條件表示式3:
程式碼塊3
.....
## 滿足按個條件執行那個程式碼塊
1.4巢狀 : 就是單項分支,雙項分支,多項分支之間的巢狀
2.迴圈:while while True:死迴圈
取餘:任何數和n取餘,餘數範圍:0~(n-1)
地板除:任何數和n地板除,可得到n個相同的數
""" i=0 while 條件表示式: code #條件成立執行程式碼,不陳列終止迴圈 i+=1 1.初始化變數 2.條件表示式 3.寫自動加減乘除.... 4,在2和3之間寫程式碼塊 """ #列印九九乘法表 i=1 while i<10: j=1 while j<=i: print("%s*%s=%2s "%(i,j,i*j),end="") j+=1 print() i+=1
3.for迴圈:
1.語法:
for 變數 in Iterable:
程式碼塊
Iterable:可迭代性資料(容器型別資料,range物件,迭代器)
2.遍歷一級容器
str1="打掃房間零點開始" #遍歷字串
str1=[2,3,5,6,7] #列表
str1=(33,44,55) #元組
str1={333,444,555} #集合
str1={"a":111,"b":222} #字典只能獲取鍵
for i in str1:
print(i)
3.遍歷二級容器
# 遍歷不等長的二級容器:幾級容器就遍歷幾次 var=[(11,22),[33,44,"呵呵"],{55,66,77,88}] for i in var: for j in i: print(j) # 遍歷等長的二級容器: """ 變數的解包:字典只能獲取鍵 a,b=[11,22] a,b,c={1,2,3} """ print("-----遍歷等長的二級容器:---------") var=((1,2),[3,4],{5,6}) for a,b in var: print(a,b)
4.range 物件:(開始,結束,步長)留頭舍尾
# 1.range(開始:結束:步長)
print("range 物件 =========")
for i in range(-10,0,2):
print(i)
# 2.range(start,end) #預設步長是1
for i in range (3,11):
print(i)
# 3.range(end):預設從0開始
for i in range(11):
print(i)
5.列印九九乘法表:
print("=======列印九九乘法表:1~9=======")
for i in range(1,10):
for j in range(1,i+1):
print("%s*%s=%2s "%(i,j,i*j),end="")
print()
print("=======列印九九乘法表:9~1=======")
for i in range(9,0,-1):
for j in range(1,i+1):
print("%s*%s=%2s"%(i,j,i*j),end="")
print()
4.關鍵字
1.pass
# 1.pass 過 的意思,主要用來站位,不知道寫啥了
while True:
pass
2.break
#終止當前迴圈(只能應用到迴圈中)
# 列印1~8,遇到4終止迴圈
for i in range(1,9):
print(i)
if i==4:
break
3.continue
#跳過當前迴圈,從下一次迴圈開始(只能應用到迴圈中)
# 1~10,遇到5跳過
print("1~10,遇到5跳過---for")
for i in range(1,11):
if i ==5:
continue
print(i)
print("1~10,遇到5跳過----while")
i=1
while i<=10:
if i==5:
i+=1
continue
print(i)
i+=1
#在while迴圈中,continue跳過是,可能出現死迴圈,需要在continue前手動增加迴圈條件