Tuple trong Python
Một tuple là một dãy các đối tượng không thay đổi (immutable) trong Python, vì thế Tuple trong Python không thể bị thay đổi. Các tuple cũng là các dãy giống như List. Không giống List mà sử dụng các dấu ngoặc vuông, thì tuple sử dụng các dấu ngoặc đơn. Để hiểu rõ hơn về kiểu dữ liệu Tuple, mời bạn đọc tham khảo bài viết dưới đây.
Mục lục nội dung
1. Kiểu dữ liệu Tuple là gì?
Kiểu dữ liệu Tuple trong python là một collection có thứ tự, không thể thay đổi. Cho phép chứa dữ liệu trùng lặp.
Tuple sử dụng các dấu ngoặc đơn, Không giống như List sử dụng các dấu ngoặc vuông. Các đối tượng trong tuple được phân biệt bởi dấu phảy và được bao quanh bởi dấu ngoặc đơn (). Giống như chỉ mục của chuỗi, chỉ mục của tuple bắt đầu từ 0.
Ví dụ:
fruits = ("apple", "banana", "guava")
print(fruits)
Ghi chú: Nếu các dấu ngoặc đơn không được cung cấp với một dãy, thì nó được coi như là tuple.
Một tuple trống không chứa phần tử nào, ví dụ:
tup1 = ();
Các tuple cũng có thể được lồng vào nhau, ví dụ:
tupl1 = ("apple", "banana", "guava")
tupl2 = ("kiwi", "cherry")
fruits = (tupl1, tupl2)
print (fruits)
Kết quả
(('apple', 'banana', 'guava'), ('kiwi', 'cherry'))
2. Truy cập các giá trị trong tuple trong Python
Bạn có thể truy cập các giá trị của tuple bằng cách tham bằng cách sử dụng chỉ mục, bên trong dấu ngoặc vuông. Ví dụ:
fruits = ("apple", "banana", "guava", "kiwi", "cherry")
print (fruits[1])
Kết quả:
banana
Chỉ mục âm
Lập chỉ mục âm có nghĩa là bắt đầu từ cuối, -1 đề cập đến mục cuối cùng, -2 đề cập đến mục cuối cùng thứ hai, v.v. Ví dụ:
fruits = ("apple", "banana", "guava", "kiwi", "cherry")
print (fruits[-1])
Kết quả:
cherry
Phạm vi chỉ mục
Bạn có thể chỉ định một phạm vi chỉ mục bằng cách chỉ định nơi bắt đầu và nơi kết thúc phạm vi.
Khi chỉ định một phạm vi, giá trị trả về sẽ là một tuple mới với các mục được chỉ định.
Ví dụ: Trả lại giá trị thứ ba, thứ tư và thứ năm:
fruits = ("apple", "banana", "guava", "kiwi", "cherry", "orange", "lemon")
print (fruits[2:5])
Kết quả:
('guava', 'kiwi', 'cherry')
Tìm kiếm sẽ bắt đầu ở chỉ số 2 (bao gồm) và kết thúc ở chỉ số 5 (không bao gồm). Hãy nhớ rằng mục đầu tiên có chỉ số 0.
Phạm vi của các chỉ mục âm
Chỉ định các chỉ mục âm nếu bạn muốn bắt đầu tìm kiếm từ cuối tuple:
fruits = ("apple", "banana", "guava", "kiwi", "cherry", "orange", "lemon")
print (fruits[-5:-2])
Kết quả:
'guava', 'kiwi', 'cherry')
3. Thay đổi giá trị Tuple
Khi một tuple được tạo, bạn không thể thay đổi giá trị của nó. Tuple là không thể thay đổi hoặc bất biến.
Có một cách giải quyết. Đó là bạn có thể chuyển đổi tuple thành một list, thay đổi list và chuyển đổi lại thành tuple.
x = ("apple", "banana", "cherry")
y = list(x)
y[1] = "kiwi"
x = tuple(y)
print(x)
Kết quả:
('apple', 'kiwi', 'cherry')
4. Duyệt các giá trị của một Tuple
Bạn có thể duyệt qua các giá trị của một tuple trong Python bằng cách sử dụng vòng lặp for .
fruits = ("apple", "banana", "cherry")
for x in fruits:
print(x)
Kết quả:
apple
banana
cherry
5. Kiểm tra xem nếu giá trị tồn tại trong Tuple
Sử dụng từ khóa in để kiểm tra xem giá trị đã cho có tồn tại trong Tuple hay không.
fruits = ("apple", "banana", "cherry")
x = "banana" in fruits
print(x)
Kết quả:
True
6. Chiều dài tuple trong Python
Để xác định có bao nhiêu giá trị trong một tuple, sử dụng hàm len().
fruits = ("apple", "banana", "cherry")
print(len(fruits))
Kết quả:
3
7. Thêm các phần tử vào tuple trong Python
Khi một tuple được tạo, bạn không thể thêm các mục vào nó. Tuples là không thể thay đổi .
Ví dụ sau sẽ tạo ra một lỗi:
fruits = ("apple", "banana", "cherry")
fruits[3] = "kiwi"
print(len(fruits))
Kết quả:
TypeError: 'tuple' object does not support item assignment
8. Tạo tuple với một phần tử duy nhất
Với một tuple chỉ có duy nhất một giá trị, thì phải có một dấu phảy ở cuối, ví dụ:
tuple1 = ("apple",)
print(type(tuple1))
#khong phai la mot tuple
tuple2 = ("apple")
print(type(tuple2))
Kết quả:
<class 'tuple'>
<class 'str'>
9. Xóa các phần tử của Tuple trong Python
Tuple là không thể thay đổi\, vì vậy bạn không thể xóa các mục khỏi nó, nhưng bạn có thể xóa hoàn toàn một tuple bằng cách sử dụng từ khóa del.
fruits = ("apple", "banana", "cherry")
del fruits
print(fruits)
Kết quả:
NameError: name 'fruits' is not defined
10. Nối 2 Tuple trong Python
Bạn có thể sử dụng toán tử cộng để nối nhiều tuple trong Python:
tuple1 = ("a", "b" , "c")
tuple2 = (1, 2, 3)
tuple3 = tuple1 + tuple2
print(tuple3)
Kết quả:
('a', 'b', 'c', 1, 2, 3)
11. Constructor tuple()
Cũng có thể sử dụng constructor tuple() để tạo một tuple.
fruits = tuple(("apple", "banana", "cherry"))
print(fruits)
Kết quả:
('apple', 'banana', 'cherry')
12. Các phương thức xử lý tuple trong Python
Bảng dưới liệt kê các hàm đã được xây dựng sẵn để thao tác với Tuple trong Python, bạn theo link để tìm hiểu chi tiết:
STT | Hàm và Miêu tả |
---|---|
1 | Hàm len(tuple) Trả về độ dài của tuple |
2 | Hàm max(tuple) Trả về item có giá trị lớn nhất từ một tuple đã cho |
3 | Hàm min(tuple) Trả về item có giá trị nhỏ nhất từ một tuple đã cho |
4 | Hàm tuple(seq) Chuyển đổi một dãy thành tuple |
Tại sao chúng ta sử dụng tuple?
- Trình xử lý các tuple là nhanh hơn các List.
- Làm cho dữ liệu an toàn hơn bởi vì tuple là không thay đổi (immutable) và vì thế nó không thể bị thay đổi.
- Các tuple được sử dụng để định dạng String.
Trên đây là bài viết của eLib.VN về kiểu dữ liệu Tuple trong Python. Chúng tôi hy vọng bài viết hữu ích đến bạn. Chúc các bạn thành công!
Tham khảo thêm
- doc Kiểu dữ liệu Number trong Python
- doc Chuỗi (String) trong Python
- doc List trong Python
- doc Set trong Python
- doc Dictionary trong Python
- doc Phân biệt List, Tuple, Set, Dictionary trong Python