not表示取反啊,相當于C語言中的非(!),例如:
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業的熱愛。我們立志把好的技術通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領域值得信任、有價值的長期合作伙伴,公司提供的服務項目有:域名注冊、虛擬空間、營銷軟件、網站建設、武鳴網站維護、網站推廣。
#?因為x為True,所以輸出結果為1
x?=?True
if?x:
print?1
else:
print?2
#?因為x為True,not?x?就是False了,所以輸出結果為2
x?=?True
if?not?x:
print?1
else:
print?2
bool是Boolean的縮寫,只有真(True)和假(False)兩種取值
bool函數只有一個參數,并根據這個參數的值返回真或者假。
1.當對數字使用bool函數時,0返回假(False),任何其他值都返回真。
bool(0)
False
bool(1)
True
bool(-1)
True
bool(21334)
True
2.當對字符串使用bool函數時,對于沒有值的字符串(也就是None或者空字符串)返回False,否則返回True。
bool('')
False
bool(None)
False
bool('asd')
True
bool('hello')
True
3.bool函數對于空的列表,字典和元祖返回False,否則返回True。
a = []
bool(a)
False
a.append(1)
bool(a)
True
4.用bool函數來判斷一個值是否已經被設置。
x = raw_input('Please enter a number :')
Please enter a number :
bool(x.strip())
False
x = raw_input('Please enter a number :')
Please enter a number :4
bool(x.strip())
True
True False? !記得大寫
True ==1.0√? ?True == “True”×不可以等于字符串!
Python中布爾運算的短路運算特性,如果邏輯運算符兩邊都是數字,則返回能決定結果的數字
對于or來說只要第一個值是True那么不論第二個值是什么結果都一定是True,所以此時直接返回3
[]這是空列表,它的布爾值是False,可以用bool([])檢驗一下;
None的布爾值也是False,也可以用bool(None)檢驗;
語法優先級
not
and
or
python常見的內置函數有:
1. abs()函數返回數字的絕對值。
2. all() 函數用于判斷給定的參數中的所有元素是否都為 TRUE,如果是返回 True,否則返回 False。元素除了是 0、空、None、False 外都算 True;空元組、空列表返回值為True。
3. any() 函數用于判斷給定的參數是否全部為False,是則返回False,如果有一個為True,則返回True。 元素除了是 0、空、False外都算 TRUE。
4. bin()函數返回一個整數int或者長整數long int的二進制表示。
5. bool() 函數用于將給定參數轉換為布爾類型,如果參數不為空或不為0,返回True;參數為0或沒有參數,返回False。
6. bytearray()方法返回一個新字節數組。這個數組里的元素是可變的,并且每個元素的值范圍: 0 = x 256(即0-255)。即bytearray()是可修改的二進制字節格式。
7. callable()函數用于檢查一個對象是否可調用的。對于函數、方法、lambda函式、類以及實現了 __call__ 方法的類實例, 它都返回 True。(可以加括號的都可以調用)
8. chr()函數用一個范圍在range(256)內(即0~255)的整數作參數,返回一個對應的ASCII數值。
9. dict()函數用來將元組/列表轉換為字典格式。
10. dir()函數不帶參數時,返回當前范圍內的變量、方法和定義的類型列表;帶參數時,返回參數的屬性、方法列表。
擴展資料:
如何查看python3.6的內置函數?
1、首先先打開python自帶的集成開發環境IDLE;
2、然后我們直接輸入"dir(__builtins__)",需要注意的是builtins左右的下劃線都是兩個;
3、回車之后我們就可以看到python所有的內置函數;
4、接下來我們學習第二種查看python內置函數的方法,我們直接在IDLE中輸入"import builtins",然后輸入"dir(builtins)";
5、然后回車,同樣的這個方法也可以得到所有的python內置的函數;
6、這里我們可以使用python內置函數len()來查看python內置函數的個數,這里我們直接輸入"len(dir(builtins))";
7、回車之后我們可以看到系統返回值153,說明我們現在這個版本中有153個內置函數;
8、最后我們介紹一個比較有用的內置函數"help",python內置函數有一百多個,我們當然不能記住所有的函數,這里python提供了一個"help"函數,我們來看一個例子一起來體會一下help函數的用法,這里我們直接輸入"help(len)",然后回車,會看到系統給我們對于內置函數"len"的解釋,當然對于其他函數可能會有更加詳細的解釋以及用法提示。
作者:gao xinge
鏈接:
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
內建函數boolpython中的所有對象都可以用內建函數bool來判斷布爾值是True還是False,如下 bool(1)
True
bool(0)
False
bool(True)
True
bool(False)
False
def f(a):
return a
bool(f)
True
bool(__builtins__)
True
import collections
bool(collections)
True
__nonzero__函數和__len__函數內建函數bool的邏輯順序: 如果對象沒有實現__nonzero__函數或者__len__函數,返回True; 如果對象實現了__nonzero__函數,根據__nonzero__函數的返回值判斷; 如果對象沒有實現__nonzero__函數,但實現了__len__函數,根據__len__函數的返回值判斷如下 # example one
class f:
def __init__(self, a, b):
self.a = a
self.b = b
t = f(0,1)
bool(t)
True
# example two
class f:
def __init__(self, a, b):
self.a = a
self.b = b
def __nonzero__(self):
return self.a
def __len__(self):
return self.b
t = f(0,1)
bool(t)
False
# example three
class f:
def __init__(self, a, b):
self.a = a
self.b = b
def __len__(self):
return self.b
t = f(1,0)
bool(t)
False
喬治·布爾(George Boole,1815.11.2~1864),1815年11月2日生于英格蘭的林肯。19世紀最重要的數學家之一,出版了《邏輯的數學分析》 ,這是它對符號邏輯諸多貢獻中的第一次。
布爾的邏輯代數理論建立在兩種邏輯值“真True”、“假False”和三種邏輯關系“與AND”、“或OR”、“非NOT”。這種理論為數字電子計算機的二進制、形關邏輯元件和邏輯電路的設計輔平了道路。
馮·諾依曼奠定了現代計算機的基礎,被世人尊為“計算機之父”,但在談到他的理論與構思時,他謙虛地說,這些理論與構思的基礎來自于英國數學家圖靈和布爾的思想。
谷歌在2015年的網頁紀念了布爾誕辰200周年。
布爾值
計算機的邏輯判斷,只有兩種結果,就是True(英文意思是“真”)和False(英文意思是“假”)
在Python中:
只要數字零、空對象以及特殊對象None都被認作是假,其他為真
用 bool() 函數來查看一個數據會被判斷為真還是假
Python中有三種布爾表達式運算符:
x and y (兩者都)
x or y (兩者的其中之一)
not x (不)
not True就等于False,not False就等于True
實例:
True
False
True
False
布爾值操作符優先級為 not and or
x是True,無論y and z 的結果是什么,這個語句的結果都是True,這就是短路保護,也叫說惰性計算,懶得計算后面的。
其實記得布爾值操作符優先級為 not and or即可。
文章名稱:python布爾判斷函數,Python的布爾值
URL分享:http://vcdvsql.cn/article10/hecedo.html
成都網站建設公司_創新互聯,為您提供域名注冊、搜索引擎優化、App設計、品牌網站制作、關鍵詞優化、品牌網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯