在Python中,列表和數組是用於存儲多個項目的數據結構。它們都支持元素索引以訪問它們、切片和迭代元素。在這篇文章中,我們將看到兩者之間的區別。
列表和數組的操作差異
訪問元素速度很快Python 數組因為它們是連續的,但是插入和刪除非常昂貴,因為所有元素都是從插入和刪除元素的位置線性移動的。假設數組的長度為 1000,並且我們在第 100 個位置插入/刪除元素,那麽第 100 個位置之後的所有元素都將發生移位,因此操作會變得昂貴。
訪問 a 中的元素Python列表與 Array 相同,因為 List 實際上是動態數組。在列表的開頭或中間插入或刪除元素可能效率較低,因為它可能需要移動所有後續元素,這在最壞的情況下是 linear-time 操作。
什麽是列表?
A 列表Python中是一個內置的項目集合,可以包含多種數據類型的元素,這些數據類型可以是數字、字符邏輯值等。它是一個支持負索引的有序集合。可以使用包含數據值的 [] 創建列表。使用 Python 的內置函數可以輕鬆合並和複製列表的內容。
例子:
在此示例中,我們將創建一個列表Python。列表的第一個元素是整數,第二個元素是 Pythonstring,第三個是字符列表。
Python3
# creating a list containing elements
# belonging to different data types
sample_list = [1, "Yash", ['a', 'e']]
print(type(sample_list))
print(sample_list)輸出:
<class 'list'>
[1, 'Yash', ['a', 'e']]
什麽是數組?
一個數組是包含同質元素(即屬於相同數據類型)的向量。元素分配有連續的內存位置。通常,數組的大小是固定的。與列表相比,插入和刪除成本較高,但由於連續的內存分配,數組中的索引速度更快。可以通過導入 array 模塊來使用數組。
例子:
在此示例中,我們將使用 array 模塊的 array() 函數創建一個 Python 數組,並使用type()函數。
Python3
# importing "array" for array creations
import array as arr
  
# creating an array with integer type
a = arr.array('i', [1, 2, 3])
print(type(a))
for i in a:
    print(i, end=" ")輸出:
<class 'array.array'>
1 2 3 
Python 中列表和數組的區別
下表顯示了Python中List和Array之間的區別:
| 
 List  | 
 大批  | 
|---|---|
| 
 可以由屬於不同數據類型的元素組成  | 
 僅由屬於相同數據類型的元素組成  | 
| 
 無需顯式導入模塊進行聲明  | 
 需要顯式導入數組聲明模塊  | 
| 
 無法直接處理算術運算  | 
 可以直接處理算術運算  | 
| 
 優選較短的數據項序列  | 
 較長數據項序列的首選  | 
| 
 更大的靈活性允許輕鬆修改(添加、刪除)數據  | 
 由於添加和刪除必須逐元素完成,靈活性較低  | 
| 
 無需任何顯式循環即可打印整個列表  | 
 必須形成一個循環來打印或訪問數組的組件  | 
| 
 消耗更大的內存以方便添加元素  | 
 內存大小相對更緊湊  | 
| 嵌套列表的大小可以是可變的 | 嵌套數組的大小必須相同。 | 
| 
 可以使用以下函數執行直接操作: 無需導入任何內容即可使用這些函數。  | 
 需要導入適當的模塊來執行這些操作。  | 
| 例子: my_list = [1,2,3,4]  | 
例子: 導入數組 arr = array.array(‘i’, [1, 2, 3])  | 
相關用法
- Python List和Tuple的區別用法及代碼示例
 - Python List和Dictionary的區別用法及代碼示例
 - Python List append()用法及代碼示例
 - Python List extend()用法及代碼示例
 - Python List insert()用法及代碼示例
 - Python List remove()用法及代碼示例
 - Python List index()用法及代碼示例
 - Python List count()用法及代碼示例
 - Python List pop()用法及代碼示例
 - Python List reverse()用法及代碼示例
 - Python List sort()用法及代碼示例
 - Python List copy()用法及代碼示例
 - Python List clear()用法及代碼示例
 - Python List cmp()用法及代碼示例
 - Python List len()用法及代碼示例
 - Python List max()用法及代碼示例
 - Python List min()用法及代碼示例
 - Python List list()用法及代碼示例
 - Python List remove方法用法及代碼示例
 - Python List insert方法用法及代碼示例
 - Python List copy方法用法及代碼示例
 - Python List append方法用法及代碼示例
 - Python List clear方法用法及代碼示例
 - Python List pop方法用法及代碼示例
 - Python List sort方法用法及代碼示例
 
注:本文由純淨天空篩選整理自yashchuahan大神的英文原創作品 Difference between List and Array in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
