最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python運算符&=使用實例探究

 更新時間:2024年01月19日 11:15:04   作者:harvey的網(wǎng)絡(luò)日志  
這篇文章主要為大家介紹了Python運算符&=使用實例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

寫在前面

最近我復(fù)習(xí)了一些 python 的運算符知識,然后學(xué)到了一些新的知識,&=一個全新的運算符。

位運算

你可能已經(jīng)熟悉位運算,其中&是一個二進制的 AND 運算符。1 & 1True(1),但其他所有1和0的組合都是False(0)。

這個特性給了我們一個思路,那就是用位運算來檢查一個整數(shù)是奇數(shù)還是偶數(shù),因為奇數(shù)的最后一位始終是1(你懂的,這里說的是二進制表示):

for x in range(5):
    print(f"{x}:是{'奇數(shù)' if x & 1 else '偶數(shù)'}")

輸出:

0:是偶數(shù)
1:是奇數(shù)
2:是偶數(shù)
3:是奇數(shù)
4:是偶數(shù)

賦值語句

如果你熟悉賦值運算符,比如+=,你會知道它們是一種有用的簡寫形式,用于執(zhí)行一個操作,然后將結(jié)果分配回原始對象,即運算符左邊的對象。&=也是一樣,它執(zhí)行二進制AND操作,并將值分配回原始對象。

a = 11

a &= 1
print(a)

a &= 0
print(a)

print(type(a))

輸出:

1
0
<class 'int'>

我不確定這是巧合還是設(shè)計的結(jié)果,但是相同的語法也可以用于對兩個集合的元素執(zhí)行AND操作,(感謝Terry Davis在評論中指出)它被稱為交集更新運算符,是intersection_update()方法的縮寫。它更新原始集合,只保留在另一個集合中也有的每個元素。

但是你是否曾經(jīng)真正使用過這些&=運算符,或者想象過它們的用途?直到今天,我都沒有...

基本上,無論何時你開始有一個假設(shè),你希望接受它...直到發(fā)生一個關(guān)鍵事件,證明它是錯誤的。換句話說,如果你找到了至少一個反例,那么假設(shè)就被拒絕了,只有在它似乎仍然合理的情況下才接受假設(shè)(例如,當(dāng)它繼續(xù)通過你的測試時)。

這是科學(xué)方法的典范,如果我還記得我的學(xué)校時光的話!

實際上,在數(shù)據(jù)整理中,這是一個相當(dāng)常見的用例:我將電子表格表示為Python字典的列表,我想找到并刪除所有的空值(如None"")的列。

以下是代碼:

def remove_empty_columns(data):
 columns_to_delete = set(data[0].keys())
 for row in data:
 # 只有在最新行的列也為空時保持True(=刪除)
 columns_to_delete &= {key for key, value in row.items() if not value}
 for row in data:
 for column in columns_to_delete:
 del row[column]
 return data

當(dāng)然我可以使用 Pandas,但這樣可以避免使用龐大的依賴庫,我甚至懷疑Pandas的底層邏輯也是這個原理(如果有興趣你可以去驗證一下)。

一個小技巧

如果你想求多個集合的交集,你可以使用 &將它們鏈接在一起:

set1 = {1, 2, 3}
set2 = {2}
set3 = {2, 3}
set4 = {1, 2}
set1 &amp;= set2 &amp; set3 &amp; set4
print(set1)

輸出:

{2}

寫在最后

在 Python 中,&=是位運算符的賦值操作,用于按位與操作并將結(jié)果賦值給左操作數(shù)。它具有多種實際應(yīng)用,包括判斷整數(shù)的奇偶性、執(zhí)行位運算并更新原始對象,以及對多個集合執(zhí)行交集更新操作。

此外,我們還提供了一個實際的用例,即在數(shù)據(jù)整理中使用&=運算符刪除僅包含空值值的列。通過迭代處理字典列表并使用&=運算符來更新要刪除的列的集合,可以高效地完成此操作。

以上就是Python運算符&amp;=使用實例探究的詳細內(nèi)容,更多關(guān)于Python運算符&amp;=的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python函數(shù)常見關(guān)鍵字分享

    python函數(shù)常見關(guān)鍵字分享

    這篇文章主要向大家介紹的是python函數(shù)常見關(guān)鍵字,文章基于python的相關(guān)資料展開對文章主題的詳細介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-04-04
  • Python中動態(tài)檢測編碼chardet的使用教程

    Python中動態(tài)檢測編碼chardet的使用教程

    最近利用python抓取一些網(wǎng)上的數(shù)據(jù),遇到了編碼的問題。非常頭痛,幸運的是找到了解決的方法,下面這篇文章主要跟大家介紹了關(guān)于Python中動態(tài)檢測編碼chardet的使用方法,需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-07-07
  • Python實現(xiàn)一個優(yōu)先級隊列的方法

    Python實現(xiàn)一個優(yōu)先級隊列的方法

    這篇文章主要介紹了Python實現(xiàn)一個優(yōu)先級隊列的方法,文中講解非常細致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-07-07
  • Python實現(xiàn)的桶排序算法示例

    Python實現(xiàn)的桶排序算法示例

    這篇文章主要介紹了Python實現(xiàn)的桶排序算法,簡單說明了桶排序的概念、原理及優(yōu)缺點,并結(jié)合實例形式演示了Python實現(xiàn)桶排序的方法,需要的朋友可以參考下
    2017-11-11
  • Python處理警告范例代碼示例及解釋

    Python處理警告范例代碼示例及解釋

    在Python中,可通過warnings庫觸發(fā)并處理警告,警告用于提示用戶代碼中的潛在問題而非異常,本文介紹如何使用warnings庫導(dǎo)入、定義警告觸發(fā)函數(shù),并通過handle_warnings函數(shù)捕獲和處理不同類型的警告,需要的朋友可以參考下
    2024-10-10
  • 在Python中使用代理IP的方法詳解

    在Python中使用代理IP的方法詳解

    在網(wǎng)絡(luò)爬蟲開發(fā)中,使用代理IP是非常常見的技巧,Python作為一門強大的編程語言,也提供了很多方法來使用代理IP,下面,我將就如何在Python中使用代理IP進行詳細的闡述,并舉例說明,需要的朋友可以參考下
    2023-07-07
  • Python中函數(shù)參數(shù)設(shè)置及使用的學(xué)習(xí)筆記

    Python中函數(shù)參數(shù)設(shè)置及使用的學(xué)習(xí)筆記

    這篇文章主要介紹了Python中函數(shù)參數(shù)設(shè)置及使用的學(xué)習(xí)筆記,記錄了一些Python2.x與Python3.x中函數(shù)參數(shù)相關(guān)的不同點,需要的朋友可以參考下
    2016-05-05
  • python列表推導(dǎo)式的原理及使用方法

    python列表推導(dǎo)式的原理及使用方法

    這篇文章主要介紹了python列表推導(dǎo)式的原理及使用方法,列表推導(dǎo)式即list?comprehension,有時也被翻譯為列表解析式,是一種創(chuàng)建列表的簡潔語法,更多詳細內(nèi)容需要的小伙伴可以參考一下下面文章相關(guān)資料
    2022-03-03
  • opencv-python圖像處理安裝與基本操作方法

    opencv-python圖像處理安裝與基本操作方法

    OpenCV是一個C++庫,目前流行的計算機視覺編程庫,用于實時處理計算機視覺方面的問題,它涵蓋了很多計算機視覺領(lǐng)域的模塊。在Python中常使用OpenCV庫實現(xiàn)圖像處理。本文介紹opencv-python圖像處理安裝與基本操作,感興趣的朋友一起看看吧
    2022-01-01
  • Python自動化之實現(xiàn)桌面壁紙下載器

    Python自動化之實現(xiàn)桌面壁紙下載器

    隨著計算機性能的提升,人們對計算機個性化的要求也越來越高了,自己使用的計算機當(dāng)然要設(shè)置成自己喜歡的風(fēng)格!本文就來用Python做個桌面壁紙下載器,需要的可以參考一下
    2022-11-11

最新評論

莆田市| 桂平市| 讷河市| 清丰县| 南京市| 隆昌县| 兴海县| 稻城县| 两当县| 玉环县| 宣威市| 绩溪县| 长寿区| 迁安市| 武汉市| 裕民县| 阳曲县| 上高县| 康定县| 秀山| 福清市| 夏邑县| 黔西| 苏州市| 呼玛县| 遂宁市| 西安市| 萝北县| 龙泉市| 庆安县| 西乌珠穆沁旗| 乌什县| 横山县| 澎湖县| 平乡县| 新泰市| 济阳县| 洪江市| 建瓯市| 清流县| 抚宁县|