Python - Tuples

Một bộ tuple là một chuỗi các đối tượng Python bất biến. Tuples là các chuỗi, giống như danh sách. Sự khác biệt giữa bộ giá trị và danh sách là, bộ giá trị không thể thay đổi không giống như danh sách và bộ giá trị sử dụng dấu ngoặc đơn, trong khi danh sách sử dụng dấu ngoặc vuông.

Tạo một bộ giá trị cũng đơn giản như đặt các giá trị được phân tách bằng dấu phẩy khác nhau. Bạn có thể tùy ý đặt các giá trị được phân tách bằng dấu phẩy này giữa các dấu ngoặc đơn. Ví dụ -

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 );
tup3 = "a", "b", "c", "d";

Bộ giá trị trống được viết dưới dạng hai dấu ngoặc đơn không chứa gì -

tup1 = ();

Để viết một bộ giá trị chứa một giá trị duy nhất, bạn phải bao gồm dấu phẩy, mặc dù chỉ có một giá trị -

tup1 = (50,);

Giống như chỉ số chuỗi, chỉ số tuple bắt đầu từ 0 và chúng có thể được cắt, nối, v.v.

Truy cập giá trị trong Tuples

Để truy cập các giá trị trong bộ tuple, hãy sử dụng dấu ngoặc vuông để cắt cùng với chỉ mục hoặc các chỉ mục để lấy giá trị có sẵn tại chỉ mục đó. Ví dụ -

#!/usr/bin/python

tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5, 6, 7 );
print "tup1[0]: ", tup1[0];
print "tup2[1:5]: ", tup2[1:5];

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau:

tup1[0]:  physics
tup2[1:5]:  [2, 3, 4, 5]

Đang cập nhật Tuples

Tuple là bất biến có nghĩa là bạn không thể cập nhật hoặc thay đổi giá trị của các phần tử tuple. Bạn có thể lấy các phần của các bộ giá trị hiện có để tạo các bộ giá trị mới như ví dụ sau minh họa:

#!/usr/bin/python

tup1 = (12, 34.56);
tup2 = ('abc', 'xyz');

# Following action is not valid for tuples
# tup1[0] = 100;

# So let's create a new tuple as follows
tup3 = tup1 + tup2;
print tup3;

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau:

(12, 34.56, 'abc', 'xyz')

Xóa phần tử Tuple

Không thể xóa các phần tử tuple riêng lẻ. Tất nhiên, không có gì sai khi kết hợp một bộ dữ liệu khác với các phần tử không mong muốn bị loại bỏ.

Để loại bỏ rõ ràng toàn bộ bộ, chỉ cần sử dụng deltuyên bố. Ví dụ -

#!/usr/bin/python

tup = ('physics', 'chemistry', 1997, 2000);
print tup;
del tup;
print "After deleting tup : ";
print tup;

Điều này tạo ra kết quả sau. Lưu ý rằng một ngoại lệ được nêu ra, điều này là do saudel tup tuple không tồn tại nữa -

('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
   File "test.py", line 9, in <module>
      print tup;
NameError: name 'tup' is not defined

Thao tác Tuples cơ bản

Tuples phản hồi các toán tử + và * giống như các chuỗi; chúng có nghĩa là nối và lặp lại ở đây, ngoại trừ kết quả là một bộ giá trị mới, không phải một chuỗi.

Trên thực tế, các bộ giá trị đáp ứng tất cả các hoạt động trình tự chung mà chúng tôi đã sử dụng trên các chuỗi trong chương trước -

Biểu thức Python Các kết quả Sự miêu tả
len ((1, 2, 3)) 3 Chiều dài
(1, 2, 3) + (4, 5, 6) (1, 2, 3, 4, 5, 6) Kết nối
('Xin chào!',) * 4 ("Xin chào!", "Xin chào!", "Xin chào!", "Xin chào!") Sự lặp lại
3 trong (1, 2, 3) Thật Tư cách thành viên
for x in (1, 2, 3): print x, 1 2 3 Lặp lại