一、if條件判斷
if 條件判斷: 邏輯操作…… …… else: 邏輯操作……
其中"判斷條件"成立時(非零),則執行後面的語句,而執行內容可以多行,以縮排來區分表示同一範圍。
else 為可選語句,當需要在條件不成立時執行內容則可以執行相關語句,具體例子如下:
例項1:
# if條件判斷 #資料判斷 (字串) 1.是否為空 a.strip #if a.strip(): #Python strip()方法用於移除字串頭尾指定的字元(預設為空格或換行符)。 #strip()方法語法: #str.strip([chars]) #引數 chars --移除字串頭尾指定的字元。 #返回值 返回移除字串頭尾指定的字元生成新的字串。 a=" 1 3 " print(a.strip()) if a.strip()=='': print("a is null")
例項2:
# 判斷是否為字典 用isinstance()函式 # instance()函式來判斷一個物件是否是一個已知的型別,類似type()。 # i四年Stance()與type()區別: # type()不會認為子類是一種父類型別,不考慮繼承關係。 # isinstance()會認為子類是一種父類型別,考慮繼承關係。 # 如果要判斷;兩個型別是否相同推薦使用isinstance(). dict1= {"name":"chenjiahe","age":27} a ="hello world" if isinstance(dict1, dict): print("{0} is dict ".format(dict1)) #字典與字串拼接 print("{0} {1}".format(dict1,a))
執行結果:
{'name': 'chenjiahe', 'age': 27} is dict
{'name': 'chenjiahe', 'age': 27} hello world
例項3:
age = input("請輸入你的年齡: ") if age.strip() != '': if age.strip().isdigit(): if int(age) >= 18: print("你的年齡是{0},你是一個成年人".format(age.strip())) else: print("你的年齡是{0},你不是一個成年人".format(age)) else: print("請不要輸入非數字字元") else: print("輸入空格是沒用的")
捕獲異常:
#捕獲異常 try: age = int(input("Please input your age: ")) except Exception as e: print("請只輸入數字!") exit(1) if int(age) >= 18: print('adult') else: print("kids")
例項4:
number = int(input("Please input a number: ")) if number > 0: print("{0} 是正數".format(number)) elif number < 0: print("{0} 是負數".format(number)) else: print("{0} 是0".format(number))
二、while迴圈判斷
python 中while語句用於迴圈執行程式,即在某條件下,迴圈執行某段程式,以處理需要重複處理的相同任務。其基本形式為:
while 判斷條件: 執行語句……
判斷條件可以是任何表示式,任何非零、或非空(null)的值均為true.執行語句可以是單個語句或語句塊。
當判斷條件假false時,迴圈結束。
while語句時還有另外兩個重要的命令continue,break來跳過迴圈,continue用於跳過該次迴圈,break則是用於退出迴圈。
例項1:
while 1: age = input("請輸入你的年齡: ") if age.strip() != '': if age.strip().isdigit(): if int(age) >= 18: print("你的年齡是{0},你是一個成年人".format(age.strip())) break else: print("你的年齡是{0},你不是一個成年人".format(age)) break else: print("你輸入的是非數字字元,請重新輸入") continue else: print("輸入空格是沒用的,請重新輸入") continue
三、for迴圈
for迴圈可以遍歷任何序列的專案,如一個列表或者一個字串。
語法:
for i in sequence: statements
例項1:
for letter in 'python': print("當前字母:{0}".format(letter)) for i in range(1,10): print("{0} x {1} = {2}".format(i,i,i*i))
結果:
例項2:99乘法表
for a in range(1,10): for b in range(1,a+1): print("{0}x{1}={2}\t".format(b,a,a*b),end=' ') print()
結果: