python賦值運算符

a = 10
b = 20
if (a and b):
    print("1 - 變量a 和 b 都爲True")
else:
    print("1 - 變量 a 和 b 有一個不爲true")

if( a or b):
    print("2 - 變量 a和b都爲 true,或其中一個變量爲 true")
else:
    print("2 - 變量 a和b都不爲 true")

#修改變量 a 的值
a = 0
if ( a and b ):
    print("3 - 變量a 和 b 有一個都爲 true")
else:
    print("3 - 變量 a 和 b 有一個不爲 true")

if( a or b):
    print("4 - 變量 a 和 b 都爲true,或其中一個變量爲 true")
else:
    print("4 - 變量 a 和 b 都不爲true")

if not(a and b):
    print("5 - 變量 a 和 b 都爲false,或其中一個變量爲false")
else:
    print("5 - 變量 a 和 b 都爲true")

 

上圖是python代碼,邏輯運算符 是 or(邏輯或)、and(邏輯與)、not(邏輯非)

運算結果:

1 - 變量a 和 b 都爲True
2 - 變量 a和b都爲 true,或其中一個變量爲 true
3 - 變量 a 和 b 有一個不爲 true
4 - 變量 a 和 b 都爲true,或其中一個變量爲 true
5 - 變量 a 和 b 都爲false,或其中一個變量爲false
 

糾結了許久"爲什麼1的結果是true,是不是非0即爲真?",

最後找到數值類型的布爾值才解決我的疑惑。

布爾值類型

#bool 布爾值 ​ #True 真 , False 假

####數值類型轉換成布爾值類型 bool(數值)
    ##只有0是False , 非0是True
        print(bool(0)) # False  只有0是False
        print(bool(1)) # True    非0是真
        
####字符串轉換成布爾值類型 bool(字符串)
    ##空的字符串爲False ,非空字符串爲True
        print(bool(''))  # 空字符串 False
        print(bool("abc")) # 非空字符串 True
 
####布爾值類型轉換成字符串類型 str(布爾值)
        print(str(True)) # 轉換成字符串 True
        print(type(str(False)))# 查看類型<class 'str'>
        
####布爾類型轉換成數值類型  int(布爾值)
        print(int(True)) #  轉成int  1
        print(type(int(False))) #<class 'int'>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章