字典和恆等運算子
阿新 • • 發佈:2018-11-06
字典
字典是可變資料型別,其中儲存的是唯一鍵到值的對映。下面是儲存元素和相應原子序數的字典。
elements = {"hydrogen": 1, "helium": 2, "carbon": 6}
字典的鍵可以是任何不可變型別,例如整數或元組,而不僅僅是字串。甚至每個鍵都不一定要是相同的型別!我們可以使用方
返回預設值的 get
字典有一個也很有用的相關方法,叫做 get
。get 會在字典中查詢值,但是和方括號不同,如果沒有找到鍵,get 會返回 None(或者你所選的預設值)。如果你預計查詢有時候會失敗,get
可能比普通的方括號查詢更合適。
>>> elements.get('dilithium')
None
>>> elements['dilithium']
KeyError: 'dilithium'
>>> elements.get('kryptonite', 'There\'s no such element!')
"There's no such element!"
括號並在括號裡放入鍵,查詢字典中的值或向字典中插入新值。
print(elements["helium"]) # print the value mapped to "helium" elements["lithium"] = 3 # insert "lithium" with a value of 3 into the dictionary
我們可以像檢查某個值是否在列表或集合中一樣,使用關鍵字 in
檢查值是否在字典中。字典有一個也很有用的相關方法,叫做 get
。get 會在字典中查詢值,但是和方括號不同,如果沒有找到鍵,get 會返回 None(或者你所選的預設值)。
print("carbon" in elements)
print(elements.get("dilithium"))
輸出結果為:
True
None
Carbon 位於該字典中,因此輸出 True。Dilithium 不在字典中,因此 get
返回 None,然後系統輸出 None。如果你預計查詢有時候會失敗,get
恆等運算子
關鍵字 | 運算子 |
---|---|
is |
檢查兩邊是否恆等 |
is not |
檢查兩邊是否不恆等 |
你可以使用運算子 is
檢查某個鍵是否返回了 None。或者使用 is not
檢查是否沒有返回 None。
n = elements.get("dilithium")
print(n is None)
print(n is not None)
會輸出:
True
False
列表 a
和列表 b
是對等和相同的。列表 c
等同於 a
(因此等同於 b
),因為它們具有相同的內容。但是 a
和 c
(同樣 b
也是)指向兩個不同的物件,即它們不是相同的物件。這就是檢查是否相等與恆等的區別。