Python list rất linh hoạt, chứa dữ liệu heterogeneous (khác kiểu) tùy ý, append hiệu quả (amortized O(1)). Nếu cần mảng co giãn nhanh, list là lựa chọn tốt. Nhưng list tốn nhiều bộ nhớ hơn C array.
array.array là wrapper mỏng của C array. Chỉ chứa dữ liệu homogeneous (cùng kiểu), dùng sizeof(one object) * length byte bộ nhớ.
Ví dụ:
- List:
[1, 'a', [1, 2], 'string'] - Array:
array('i', [1, 2, 3, 4])– chỉ chứa int.
Khi nào dùng array: Xử lý dữ liệu số lớn (numeric), cần tiết kiệm RAM, tương thích C/C++/NumPy. Khi nào dùng list: Dữ liệu hỗn hợp, cần append/pop thường xuyên, kích thước nhỏ/vừa.