列表與元組的區別


從以下幾個角度分析,基本使用、存儲、性能和使用場景。

一、基本使用

列表:動態,長度不固定,可以增刪改;

元組:靜態,長度固定,不能直接增刪改,但可以合並元組;

都支持索引、切片、嵌套、函數轉換和內置函數。

 

二、存儲

列表:預分配,多申請一些空間以備后續存儲數據,存儲相同的數據,列表比元組占用空間大;

元組:在創建的時候已確定占用內存的大小,且無法直接修改元組;

列表和元組都是存儲對象的內存地址,既指針的指針數組。

 

三、性能

元組:不可變,較小的元組在引用計數為0時,不會被回收,而是被緩存起來,后續需要創建相同元組時直接從緩存中載入,不用重新創建;

   元組的初始化效率高於列表,並且元組是可哈希的,可作為字典的key;

列表:增刪改的效率高於元組,但兩者的查找效率基本一致;

 

四、場景

元組:存儲的數據和數量不變;

列表:存儲的數據或者數量可變:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM