1. Giới thiệu về Tuple trong Python
Tuple là các tập hợp giống như list trong Python, nhưng khác nhau ở 2 đặc điểm sau:
- Tuple không thể thay đổi, còn list có thể thay đổi và cập nhật các phần tử
- Tuple sử dụng cặp dấu ngoặc tròn
( )
, còn list sử dụng cặp dấu ngoặc vuông[ ]
Việc tạo một tuple cũng giống như tạo một list, các phần tử được phân tách bởi dấu phảy.
Mỗi phần tử của tuple cũng có chỉ số vị trí (index), và chỉ số cũng bắt đầu bằng 0
giống như list.
Tuple trong Python
Một số đặc điểm của Tuple:
- Tuple hiệu quả và truy cập nhanh hơn List
- Tuple có thể chuyển đổi thành List, và ngược lại
- Tuple không thể thay đổi sau khi đã được tạo ra
- Ta không thể thực hiện các thao tác add, delete và search trên Tuple
- Giá trị của các phần tử trong Tuple không thể thay đổi
- Không thể xóa từng phần tử riêng lẻ của Tuple
- Lệnh
del
sẽ xóa toàn bộ Tuple
Để tạo ra một tuple rỗng, ta sử dụng cú pháp như sau:
2. Các toán tử mà Tuple hỗ trợ
Tuple hỗ trợ các toán tử +
(Nối tuple) và *
(Nhân bản tuple).
Bảng dưới đây minh họa cú pháp và ý nghĩa của các toán tử trong Tuple.
Ví dụ về sử dụng toán tử trong Tuple
cmp(tuple1, tuple2)
: So sánh các phần tử của 2 tuple
len(tuple)
: Trả về chiều dài của tuple
max(tuple)
: Trả về phần tử có giá trị lớn nhất trong tuple
min(tuple)
: Trả về phần tử có giá trị nhỏ nhất trong tuple
tuple(seq)
: Chuyển đổi một list thành tuple
Ví dụ:
Sau đó, ta đã gọi các function để lấy ra thông tin mô tả về tuple vừa tạo:
- Tổng giá trị của các phần tử
- Lấy và in ra độ dài
- Phần tử có giá trị lớn nhất trong tuple
- Phần tử có giá trị nhỏ nhất trong tuple
Kết quả của chương trình được hiển thị như hình bên dưới.
Kết quả của ví dụ sử dụng một số hàm thao tác với Tuple
3. Sử dụng vòng lặp để duyệt qua các phần tử trong Tuple
Kết quả sử dụng vòng lặp lặp qua các phần tử của Tuple
Vì vậy nếu ta cố tình thực hiện việc sửa / xóa phần tử trong tuple sẽ bị lỗi.
Ví dụ như sau:
Chương trình trên khi thực thi sẽ thông báo lỗi như sau:
Lỗi khi cố gắng thay đổi các phần tử trong Tuple
Tổng kết
Có rất nhiều ứng dụng đối với kiểu dữ liệu tuple. Tuy nhiên, bạn sẽ khám phá ra chúng khi học Python chuyên sâu hơn.