總體來說用d.items()比d.iteritems()快嗎
記得dict的最后一章有這么一段:‘’不過dict的查找速度快不是沒有代價的,dict的缺點是占用內存大,還會浪費很多內容,list正好相反,占用內存小,但是查找速度慢?!?br />我理解的是快速運行會以占用更大的內存為代價
而d.items()生成的是list,占用更大的內存,所以會更慢是嘛?
也不知道是不是理解錯,運行速度和占用內存到底有沒有關系呢?
記得dict的最后一章有這么一段:‘’不過dict的查找速度快不是沒有代價的,dict的缺點是占用內存大,還會浪費很多內容,list正好相反,占用內存小,但是查找速度慢?!?br />我理解的是快速運行會以占用更大的內存為代價
而d.items()生成的是list,占用更大的內存,所以會更慢是嘛?
也不知道是不是理解錯,運行速度和占用內存到底有沒有關系呢?
2020-02-08
舉報
2020-05-26
我理解是,list是有序的容器,查找的時候要指定下標,遍歷的時候,如果要查找的元素在最后一位,那它就要遍歷完整個列表才能找到。所以查找速度慢。
但是dict就不一樣。它可以指定key來找,一找一個準
2020-02-28
我的理解是? dict是無序的,那么dict只需要關注內容的內存的儲存地址,每一次查找相當于一般的變量查找。而且list是有序的,必須要單獨劃一個獨特的存儲地址,查找也必須按順序逐一對比,所以比較慢
2020-02-08
d.items()會生成新的list而占據內存,通過list的描述來看是查找速度慢的,而d.iteritems()不轉換成list,而是在轉換過程中不斷給出tuple,所以整體來說還是dict的屬性,查找速度快。