python分支結構(無switch結構)
#例如:
x=10
y=85
if x>20 or x<-10:
if y<100 or y>x:
print("Good")
else:
print("Bad")
num=int(input("請輸入一個數字:"))
if num%2==0:
if num%3==0:
print("你輸入的數字可以整除2和3")
else:
print("你輸入的數字可以整除2,但是不能整除3")
else:
if num%3==0:
print("你輸入的數字可以整除3,但是不能整除2")
else:
print("你輸入的數字,不能整除2和3")
#4.3.2真值測試;
#python與cC++在處理真值和邏輯運算的方式上有所不同。在python中:
#任何非0數字和非空對象都未真。
#數字0、空對象(如空列表[],空字典{})、None都為假;
#比較和相當測試返回true(真)或false(假)。
#邏輯運算and和or,會返回參與運算的真或假的對象。
#回顧:邏輯運算:not x:x非真即假,非假即真;
#x and y:雙真才為真;x or y:x 雙假才為假;
print(2<5)
print(2>5)
print(2==5)
#2 not 運算,not運算返回true或false。例如:
print(not True,not False)
print(not 0,not 1,not 2)
print(not ‘abc‘,not [1,2],not{‘a‘:12}) #非空對象為真;
print(not ‘‘,not[],not{}) #空的對象為假
#3.and和or,python中的and和or運算符總是返回參與運算的對象,而不True和False。Python在計算and運算時,總是按從左到右的順序計算。
print(2 and 0)
print([] and 2)
print(2 and {})
print([]and{})
print(2 and 5) #如果參與運算的對象都為真,則返回最後一個為真的對象。
print(5 and 2)
#or運算同樣執行短路計算,在找到第一個為真的對象時,返回該對象,計算結束。
print(0 or 2)
print(2 or [])
print(False or 5)
print([]or{})
print({}or[])
print(False or 5)
#3.3 if...elif 三元表達式
x=5
y=100
if x>y:
a=x
else:
a=y
print(a)
#該if語句,將x、y中較大值賦值給a,該語句可簡化為如下的if...els三元表達式。
#a=x if x>y else y
#python還支持從列表中挑選對象,其基本格式如下:
a=[x,y][f]
#f為假時,將x賦值給a,否則將y賦值給a。假前,真後
a=5
b=10
c=[a,b][a>b]
print(c)
python分支結構(無switch結構)