4.python-and-or-not

#一函數

編寫一個函數判斷輸入的三個數是否能構成三角形code

我寫的函數原理

def is_triangle(a, b, c):
    if (a+b>c and abs(a-b)<c) or (a+c>b and abs(a-c)<b) or (b+c>a and abs(b-c)<a):
        return True
    return False

別人寫的函數co

def is_triangle(a, b, c):
    return (a<b+c) and (b<a+c) and (c<a+b)```
**反思:在我記憶中構成三角形的要數是兩邊之和大於第三邊,兩邊之差小於第三邊,這事一個重複的概念,移一下位置就能夠實現。因此,構成三角形的原理就是任意兩邊之和小於第三邊**
***
#二
### and or 的用法探究
* **and or 返回的不是布爾值,而是返回結果**

a = 3 b = 2 #c = [a,b][False] c = a or b print(c)block

結果 3return

 

a = 3 b = 2 #c = [a,b][False] c = a and b print(c)ab

結果 2

* **or:遇到True立馬返回值,全False返回最後一個False。**   
* **and:遇到False立馬返False,全True返回最後一個True。**

**應用:True 爲a, False爲b**

a = 3 b = 2 #c = [a,b][False] c = a < b and a or b print(c)

結果 2

相關文章
相關標籤/搜索