一、位運算符
&符號是Python中的位運算符,與 |、^、~ 分別代表按位與、按位或、按位異或、按位取反操作。它們操作的都是二進位數(也就是0、1組成的數),操作時會對二進位對應位進行計算,得到的結果是一個二進位數。
a = 60 # 60 = 0b111100 b = 13 # 13 = 0b1101 c = a & b # 12 = 0b1100 print("a & b 的值為:", c) # 列印結果為 12
在這個例子中,a 與 b 的二進位數在按位與後,得到的結果是 12,二進位數為1100,即60的二進位數111100與13的二進位數1101相對應位進行按位與操作後得到1100.
二、條件語句中的&
&符號也可以用在條件語句中,作為邏輯與的運算符。邏輯與指兩個條件同時為真時才為真,否則為假。
x = 2 y = 4 if x==2 & y==4: print("x 和 y 都滿足條件") else: print("x 和 y 不同時滿足條件")
當x=2且y=4時,兩個條件都為真,if語句中的條件為True,結果會執行第一個print語句。而如果使用and運算符代替&符號,則結果也是一樣的。
三、集合交運算
在 Python 中,& 符號可以看作是集合之間的交運算符,可以用來求兩個集合的交集。交集是指兩個集合中都存在的元素。
A={1,2,3,4,5} B={4,5,6,7} C = A & B print("A 和 B 的交集為:", C) # 列印結果為 {4, 5}
在這個例子中,A 和 B 是兩個集合,使用&作為交運算符,求出兩個集合的交集。結果是 {4, 5}。
四、字典操作
在Python中,&可以用來鏈接兩個字典,將它們的鍵和值組合在一起形成一個新的字典。
dict1 = {'a': 1, 'b': 2} dict2 = {'b': 3, 'c': 4} dict3 = dict1 & dict2 print("dict1 和 dict2 的交集為:", dict3) # 列印結果為 {'b': 2} 注意原字典dict1並未被改變
使用&作為連接符合併兩個字典的時候,它只會保留第一個字典中包含的鍵值對。在這個例子中,字典dict1和字典dict2中都有鍵b,但是在新的字典dict3中,只保留了鍵b在字典dict1中對應的值2。
五、異或運算
在Python中,&符號可以作為異或運算符(XOR)來處理二進位數字。異或運算符(XOR)是一種按位運算符,用於將兩個二進位數的相應位相異或。如果相應的位相同,則結果為 0,否則為 1。
a = 60 # 60 = 0b111100 b = 13 # 13 = 0b1101 c = a ^ b # 49 = 0b110001 print("a ^ b 的值為:", c) # 列印結果為 49
在這個例子中,a 與 b 的二進位數在按位異或後,得到的結果是 49,即60的二進位數111100與13的二進位數1101相對應位進行按位異或操作後得到110001.
總結
Python中&符號有多重作用,可以作為位運算符、條件語句中的邏輯與、集合交運算符、字典連接符以及異或運算符。作為全能工程師的你,一定要清楚地掌握這些用法,才能寫出更加優美的Python代碼。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/232428.html