Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Khác biệt và tương đồng giữa Tuple và List trong Python

Cả List và Tuple là sequence data type. Đều là collection các item ngăn cách bằng dấu phẩy, không nhất thiết cùng type.

Tương đồng

Concatenation, repetition, indexing, slicing đều làm được trên cả hai:

# List
L1 = [1,2,3]; L2 = [4,5,6]
L1 + L2        # [1,2,3,4,5,6]
L1 * 3         # [1,2,3,1,2,3,1,2,3]
L1[4]          # 5
L1[2:4]        # [3,4]

# Tuple
T1 = (1,2,3); T2 = (4,5,6)
T1 + T2        # (1,2,3,4,5,6)
T1 * 3         # (1,2,3,1,2,3,1,2,3)
T1[4]          # 5
T1[2:4]        # (3,4)

Built-in functions chung: len(), max(), min().

Khác biệt

Đặc điểmListTuple
MutabilityMutable (thay đổi được)Immutable (bất biến)
Append/InsertCóKhông (AttributeError)
Update itemL1[2] = 100 ✓TypeError
Delete itemremove(), del ✓AttributeError
MemoryLớn hơnNhỏ hơn, nhanh hơn
Dùng làm dict keyKhông (unhashable)Có (nếu element hashable)

Khi nào dùng gì?

  • List: collection cần thay đổi (add/remove/update)
  • Tuple: dữ liệu cố định, record, dict key, return multiple values