Trong Python, đối tượng chia làm hai loại:
- Mutable Object (đối tượng có thể thay đổi)
- Immutable Object (đối tượng không thể thay đổi)
Mutable (Có thể thay đổi)
Các đối tượng mutable có thể sửa đổi sau khi tạo: list, set, dict, v.v. Chúng dễ dàng thay đổi nội dung.
Ví dụ 1: List
lst = ["Tutorials ", "Point", "Pvt", "Ltd"] lst[2] = 'Tutorix' print(lst)
['Tutorials ', 'Point', 'Tutorix', 'Ltd']
Ví dụ 2
lst = ['Car', 'Bike', 'Scooty', 'Bus', 'Metro'] lst[4] = 'Bicycle' print(lst)
['Car', 'Bike', 'Scooty', 'Bus', 'Bicycle']
Immutable (Không thể thay đổi)
Các đối tượng immutable không thể sửa đổi sau khi tạo: int, float, bool, str, tuple, frozenset, v.v. Việc thay đổi chúng tốn kém (phải tạo đối tượng mới).
Ví dụ 1: Tuple
tup = ('1', '2', 'Python', 'Perl')
print(tup)
('1', '2', 'Python', 'Perl')
Ví dụ 2: Thử gán giá trị cho tuple (gây lỗi)
tup = ('1', '2', 'Python', 'Perl')
tup[4] = '2019' # TypeError
TypeError: 'tuple' object does not support item assignment
Tóm tắt:
| Mutable | Immutable |
|---|---|
| list, set, dict, bytearray | int, float, bool, str, tuple, frozenset, bytes |