淺談Python中(&,|)和(and,or)之間的區(qū)別
(&,|)和(and,or)是兩組比較相似的運(yùn)算符,用在“與”/ “或”上,在用法上有些許區(qū)別。
(&,|)和(and,or)是用來(lái)比較兩組變量的,格式基本上是:
a & b a | b a and b a or b
如果a,b是數(shù)值變量, 則&, |表示位運(yùn)算, and,or則依據(jù)是否非0來(lái)決定輸出,
&, |:
# 1&2,2在二進(jìn)制里面是10,1在二進(jìn)制中是01,那么01與運(yùn)算10得到是0 1 & 2 # 輸出為 0, 1 | 2 # 輸出為3
and, or:
# 判斷變量是否為0, 是0則為False,非0判斷為True, # and中含0,返回0; 均為非0時(shí),返回后一個(gè)值, 2 and 0 # 返回0 2 and 1 # 返回1 1 and 2 # 返回2 # or中, 至少有一個(gè)非0時(shí),返回第一個(gè)非0, 2 or 0 # 返回2 2 or 1 # 返回2 0 or 1 # 返回1
如何a, b是邏輯變量, 則兩類的用法基本一致
In[103]:(3>0) | (3<1) Out[103]: True In[104]:(3>0) and (3<1) Out[104]: False In[105]:(3>0) or (3<1) Out[105]: True In[106]:(3>0) & (3<1) Out[106]: False
值得提及的是在DataFrame的切片過(guò)程,要注意邏輯變量的使用,
需要求得滿足多個(gè)邏輯條件的數(shù)據(jù)時(shí),要使用& 和|,在某些條件下用and/ or會(huì)報(bào)錯(cuò)‘ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all().'
target_url = "http://aima.cs.berkeley.edu/data/iris.csv" data = pd.read_csv(target_url, header=None, columns=['s_line', 's_wid', 'p_line', 'p_wid', 'kind']) data.columns = ['s_line', 's_wid', 'p_line', 'p_wid', 'kind'] x_data = data.iloc[:, :-1] # 在多個(gè)邏輯條件下,用& 或者|, x_1 = x_data[x_data['s_line'] > 6 & x_data['p_wid'] > 0]
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python中邏輯與或(and、or)和按位與或異或(&、|、^)區(qū)別
- python中and和or邏輯運(yùn)算符的用法示例
- python中not、and和or的優(yōu)先級(jí)與詳細(xì)用法介紹
- 解決Python 異常TypeError: cannot concatenate ''str'' and ''int'' objects
- python and or用法詳解
- Python中的random.uniform()函數(shù)教程與實(shí)例解析
- python實(shí)現(xiàn)隨機(jī)森林random forest的原理及方法
- Python 中 and, or, &, |, ^ 的使用小結(jié)
相關(guān)文章
Python Django 簡(jiǎn)單分頁(yè)的實(shí)現(xiàn)代碼解析
這篇文章主要介紹了Python Django 簡(jiǎn)單分頁(yè)的實(shí)現(xiàn)代碼解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-08-08Python3 虛擬開(kāi)發(fā)環(huán)境搭建過(guò)程(圖文詳解)
這篇文章主要介紹了Python3 虛擬開(kāi)發(fā)環(huán)境搭建過(guò)程,本文通過(guò)圖文實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01Python?mistune庫(kù)靈活的Markdown解析器使用實(shí)例探索
本文將深入介紹Python?Mistune,包括其基本概念、安裝方法、示例代碼以及一些高級(jí)用法,以幫助大家充分利用這一工具來(lái)處理Markdown文本2024-01-01python 中os模塊os.path.exists()的用法說(shuō)明
這篇文章主要介紹了python 中os模塊os.path.exists()的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03在Python中使用Fsolve函數(shù)的過(guò)程解析
這篇文章主要介紹了在Python中使用Fsolve函數(shù)的過(guò)程解析,在這篇文章中,我們了解到fsolve?是用來(lái)尋找非線性方程的根的,了解到fsolve?可以接受的不同種類的參數(shù)以及每個(gè)參數(shù)的含義,需要的朋友可以參考下2023-06-06python 獲取字典特定值對(duì)應(yīng)的鍵的實(shí)現(xiàn)
這篇文章主要介紹了python 獲取字典特定值對(duì)應(yīng)的鍵的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09pycharm沒(méi)有找到manage?repositories按鈕的解決辦法
這篇文章主要給大家介紹了關(guān)于pycharm沒(méi)有找到manage?repositories按鈕的解決辦法,pycharm是用來(lái)寫python的可視化代碼軟件,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07R vs. Python 數(shù)據(jù)分析中誰(shuí)與爭(zhēng)鋒?
R和Python兩者誰(shuí)更適合數(shù)據(jù)分析領(lǐng)域?在某些特定情況下誰(shuí)會(huì)更有優(yōu)勢(shì)?還是一個(gè)天生在各方面都比另一個(gè)更好?2017-10-10Python?遞歸式實(shí)現(xiàn)二叉樹(shù)前序,中序,后序遍歷
這篇文章主要介紹了Python?遞歸式實(shí)現(xiàn)二叉樹(shù)前序,中序,后序遍歷,更多相關(guān)資料,需要的小伙伴可以參考下面具體的文章內(nèi)容2022-03-03