Python 元組Tuple 相對於數組List的優點

咱們知道元組tuple是 Immutable (不可修改)的,而數組List是可變的,並且元組有的功能它都有,並且功能更多,應用更廣,那爲何還要保留元組呢?python

1.安全共享

假設你有幾個關鍵詞好比:CAR, AIRPLANE, BOAT. 若是它是數組,要在多個對象之間進行共享,數組沒法避免它在共享的時候被無心地更改,若是說這三個關鍵詞直接和數據中某個字段作映射,這種則更改很是危險,小則致使垃圾數據的產生,大則致使某些功能出現缺陷。數組

元組的好處之一就在於這裏,一旦三個關鍵詞被設定爲元組,則再也沒法更改。很是適合用於固定關鍵詞在對象之間的共享。安全

2.性能快

咱們能夠作一些性能測試:bash

建立函數

>>> import timeit
>>> print(timeit.timeit('["CAR", "AIRPLANE", "BOAT"]'))
0.0508033999999995
>>> print(timeit.timeit('("CAR", "AIRPLANE", "BOAT")'))
0.013855500000001797
複製代碼

能夠看到,元組的建立速度僅是數組的四分之一。性能

空間測試

>>> a_tuple = ("CAR", "AIRPLANE", "BOAT")
>>> b_list = ["CAR", "AIRPLANE", "BOAT"]
>>> from sys import getsizeof
>>> getsizeof(a_tuple)
72
>>> getsizeof(b_list)
88
複製代碼

能夠看到,元組比數組少佔用一些空間。ui

3.做爲函數返回值

其實Python的函數多返回值就是用tuple實現的。咱們知道tuple有兩種定義方式,一種是不帶括號的,一種是帶括號的:spa

my_tuple = "CAR", "AIRPLANE", "BOAT"
my_tuple2 = ("CAR", "AIRPLANE", "BOAT")

print(type(my_tuple)) # <class 'tuple'>
print(type(my_tuple2)) # <class 'tuple'> 
複製代碼

而函數使用多返回值的時候是用逗號分隔開的,這是上述的元組第一種建立形式,所以,函數多返回值實際上返回的是一個元組。code

咱們的文章到此就結束啦,若是你但願咱們今天的Python 教程,請持續關注咱們,若是對你有幫助,麻煩在下面點一個贊/在看哦

有任何問題均可以在下方留言區留言,咱們都會耐心解答的!


​Python實用寶典 (pythondict.com)
不僅是一個寶典
歡迎關注公衆號:Python實用寶典

原文來自Python實用寶典:Python 元組Tuple 相對於數組List的優點

Python實用寶典
相關文章
相關標籤/搜索