Python字典函數(shù)和集合
使用keys()獲取字典中的所有鍵Python字典在Python語言中是比較常用的保存數(shù)據(jù)的方式,相較于C語言中的數(shù)組,Python字典更加方便人性化。字典內(nèi)置的函數(shù)使獲取數(shù)據(jù)變得方便。使用keys(
使用keys()獲取字典中的所有鍵
Python字典在Python語言中是比較常用的保存數(shù)據(jù)的方式,相較于C語言中的數(shù)組,Python字典更加方便人性化。字典內(nèi)置的函數(shù)使獲取數(shù)據(jù)變得方便。使用keys()函數(shù)可以獲取字典中的所有鍵。在Python2中,keys()函數(shù)會返回一個列表,而在Python3中則返回的不是列表。如果你希望返回一個列表,可以使用list()進行類型轉(zhuǎn)換。例如,在這里我們創(chuàng)建了一個字典,然后使用keys()函數(shù)取得所有的鍵,最后通過list()函數(shù)轉(zhuǎn)換為列表。
使用values()獲取字典中的所有值
除了使用keys()函數(shù)獲取字典中的鍵,我們還可以使用values()函數(shù)獲取字典中的所有值。同樣地,使用items()函數(shù)可以獲取所有鍵值對,鍵值對以元組的形式返回。如果你想要獲得列表形式的結果,同樣需要使用list()函數(shù)進行類型轉(zhuǎn)換。
賦值和復制的區(qū)別
在Python中,使用來進行賦值操作,但是需要注意賦值之后兩個變量指向同一塊內(nèi)存。也就是說,修改其中一個變量的值,另一個變量的值也會隨之改變。與此不同,使用copy()函數(shù)進行復制操作會另外分配一塊內(nèi)存,因此復制之后的變量修改不會影響原始變量。下面的示例展示了這個區(qū)別,可以看到添加black導致signals也發(fā)生了變化,而copy卻沒有發(fā)生變化。
理解集合的概念
集合在Python中類似于數(shù)學中的集合概念。如果你在學校上課時有認真聽講,那么理解Python集合會很容易。集合中的元素不可重復,同樣在Python的集合中,鍵與鍵也不可重復。可以使用set()函數(shù)來創(chuàng)建集合,或者使用大括號并用逗號隔開的方式創(chuàng)建。
將其他類型轉(zhuǎn)換為集合
除了創(chuàng)建空集合之外,還可以使用set()函數(shù)將其他類型轉(zhuǎn)換為集合。例如,我們可以把一個單詞轉(zhuǎn)換為集合,然后再創(chuàng)建一個列表,并將列表轉(zhuǎn)換為集合。
使用in測試值是否存在于集合中
在Python中,可以使用in關鍵字來測試一個值是否存在于集合中。當使用for循環(huán)時,需要注意縮進錯誤,即"expected an indented block"錯誤提示。為了解決這個問題,我們需要在代碼行前面加上一個空格。通過這樣的修正,我們可以成功運行程序,并輸出包含vodka的鍵。