對於字典,我們知道它是通過鍵值對(key:value)的形式存放元素的,那么我們該如何獲取其元素呢?
或許,我們可以直接遍歷字典,如下:
打印結果如下:
我們可以看到,直接遍歷,則是遍歷出了字典的鍵。那有同學會說,是因為我們只拿了一個變量i去接受。
好,那我們拿兩個變量去接受,如下圖:
打印結果如下:
是不是很神奇?其實,在我們python中,直接遍歷字典,默認是遍歷了字典的鍵,當我們用兩個遍歷去
接受時,則是將遍歷的鍵進行拆包分別賦值給遍歷,顯然這不是我們想要的。
python給我們提供了一個字典的一個內置函數items(),我們先看一下字典直接調用該函數時返回什么?
打印結果如下:
我們可以看到,返回了一個列表,列表中包含數個元組,每個元組中的內容對應的就是字典中的鍵值對。
那么我們遍歷字典時,采用如下方式:
打印結果為:
因為d.items()返回的是一個列表,所以實質上是對字典進行了遍歷,取出字典中的元素(一個個的元組),
賦值給接收遍歷key和value,那么key就接收元組中的第一個元素(鍵),value接收元組中的第二個元素(值)
這樣就把元素中的鍵值對都分別取出來了。
那如果我們只想取出字典中的鍵呢,其實可以直接遍歷,如上面敘述的。但還可以用python中字典的另一個
內置函數keys(),我們看一下字典調用keys()函數時返回什么,看下圖代碼:
打印結果為:
我們可以看到,keys()函數將字典中的鍵取出來放到一個列表中返回。那么for key in d.keys():就可以將字典中
的鍵遍歷出來。
同理,遍歷字典的值,可以用values()函數,其原理與keys()函數相似。
