1.for 循環
使用for語句能夠遍歷所有元素,例如逐個輸出字符串中的字符,逐個輸出列表中的元素,元組中的元素,集合中的元素(注意賦值時各元素的順序),字典中的鍵……
1-1.range循環:python
1 for i in range(5): #range(5)函數是生成一個0-4的列表來做爲循環次數的斷定 2 print(i) 3 """輸出結果: 4 D:\Python\venv\Scripts\python.exe D:/Python/基礎/循環.py 5 0 6 1 7 2 8 3 9 4
這是從range生成的列表裏分別從0開始賦值給i變量,每賦值一次就循環一次,一直到列表結束""""
元組的方式:express
for i in (0,1,2,3,4) print(i) ##輸出結果跟上面是同樣的,可是通常不會使用,不簡潔。
列表的方式:函數
for i in ["j",1,3,"a",5]: print(i)
字符串的方式:測試
for i in "python": print(i)
2.while 循環
若是條件成立(true),重複執行相同操做,條件不符合,跳出循環spa
while 循環條件:code
循環操做
例:計算1-10相加的值blog
1 i = 1 ##賦值一個初始值給i變量 2 num = 0 #賦值一個初始值給num變量 3 while(i<=10): #設定循環斷定條件:若是i變量小於10則條件成立,執行循環裏的語句,不然跳出循環 4 num = num + i #計算語句 5 i = i + 1 #給變量i+1返回給變量i 6 print(num)
嵌套循環 --> 外部循環知足條件後,執行代碼開始執行內部循環,等內部循環所有執行完畢,若是還知足外部循環條件,則外部循環再次執行,依次類推,直到跳出外層循環。
例:分別輸入兩個學生的5門成績,並分別計算平均成績ip
1 j=1 # 定義外部循環計數器初始值 2 prompt='請輸入學生姓名' # 定義字符串變量,在用戶輸入時調用此變量能夠減小敲漢字的麻煩 3 while j<=2: # 定義外部循環爲執行兩次 4 sum=0 # 定義成績初始值,之因此定義在這裏,是爲了當第二個學生輸入成績時能夠讓sum初始化爲0,從新接收新學生的成績和 5 i=1 # 定義內部循環計數器初始值 6 name = raw_input(prompt) # 接收用戶輸入的學生姓名,賦值給name變量 7 while i<=5: # 定義內部函數循環5次,就是接收5門課程的成績 8 print ('請輸入第%d門的考試成績: '%i) #提示用戶輸入成績,其中用到了格式化輸出,%d的取值隨i的值顯示,第1門課程,第2門課程…… 9 sum= sum + input() # 接收用戶輸入的成績,賦值給sum 10 i+=1 # i變量自增1,i變爲2,繼續執行循環,直到i等於6時,跳出循環 11 avg=sum/(i-1) # 計算第一個學生的平均成績 sum/(6-1),賦值給avg 12 print name,'的平均成績是%d\n'%avg # 輸出學生成績平均值 13 j=j+1 # 內部循環執行完畢後,外部循環計數器j自增1,變爲2,再進行外部循環 14 print '學生成績輸入完成!' # 外部循環結束,提示輸入完成!
3.循環控制
循環控制語句能夠改變循環正常的執行順序字符串
循環控制語句input
break語句:跳出本次循環(嵌套循環中只跳出一層循環)
continue語句:跳過當前一輪循環體的剩餘語句,從新測試循環狀態,進入下一輪循環,好比循環的次數一共有5次,第四次遇到continue了,那麼不繼續執行了,直接進行第5次循環判斷
4.if elif else -->條件斷定執行
if condition:
expressions
若是 condition 的值爲 True,將會執行 expressions 語句的內容,不然將跳過該語句往下執行。
例:輸入一個數字斷定
1 while True: #創建一個死循環 2 try: #異常捕獲 3 num = float(input('請輸入一個數字:')) #鍵盤獲取一個值 4 if num == 0: #if斷定是否等於0 5 print('輸入的數字是零') #若是等於0則輸出 6 elif num > 0: ##if斷定是否大於0 7 print('輸入的數字是正數') #若是大於0則輸出 8 else: #以上斷定都不符合則輸出else下的語句 9 print('輸入的數字是負數') 10 break 11 except ValueError: #捕獲輸入異常 12 print("你輸入的數字無效!") #捕獲到異常則執行 13