Các bộ dữ liệu rất giống danh sách và đó là lý do tại sao chúng ta có thể định nghĩa chúng theo cách tương tự như chúng ta đã làm để xác định danh sách. Nói một cách đơn giản, một bộ là một chuỗi dữ liệu
Điều khiến chúng khác với danh sách là các bộ dữ liệu là bất biến, tôi. e. , không thể sửa đổi dữ liệu bên trong các bộ dữ liệu, điều này ngược lại trong trường hợp danh sách. Ngoài điều này, các bộ dữ liệu rất giống với danh sách và điều đó sẽ giúp chúng ta dễ hiểu hơn nhiều vì chúng ta đã biết về danh sách. Nếu không, chúng tôi khuyên bạn trước tiên nên xem qua hướng dẫn về Danh sách
Định nghĩa một Tuple
Để xác định một Tuple, chúng ta chỉ cần gán một biến duy nhất có nhiều giá trị được phân tách bằng dấu phẩy và biến đó sẽ được gọi là Tuple
>>> myTuple = 1, 2, 3, 4Nếu bạn cố in nó trong IDLE,
>>> print (myTuple);(1, 2, 3, 4)
Bạn có thể thấy trong ví dụ trên, biến >>> print (myTuple);6 thực chất là một tập hợp các số nguyên 1, 2, 3 và 4. Ngoài ra, hãy lưu ý những dấu ngoặc tròn xuất hiện trong khi in, xung quanh các số nguyên, những dấu ngoặc tròn này thực sự sẽ giúp bạn phân biệt giữa danh sách và bộ dữ liệu. Bởi vì trong trường hợp danh sách, chúng tôi có dấu ngoặc vuông xung quanh các phần tử danh sách
Rõ ràng bạn có thể thêm dữ liệu thuộc các loại khác nhau trong một bộ dữ liệu duy nhất,
>>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);(1, 2, "con trăn", 4)
Một bộ dữ liệu trống có thể được tạo bằng cách sử dụng hàm >>> print (myTuple);7 hoặc chỉ bằng cách sử dụng dấu ngoặc trống >>> print (myTuple);8
>>> emptyTuple = (); >>> anotherEmptyTuple = tuple();Các câu lệnh trên sẽ tạo ra các bộ dữ liệu không có phần tử nào trong đó. Và trình biên dịch sẽ biết rằng >>> print (myTuple);9 và >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);0 là các bộ dữ liệu, không có phần tử nào trong đó
Lập chỉ mục trong Tuples
Lập chỉ mục trong bộ cũng khá giống với trong danh sách, phần tử đầu tiên có chỉ số bằng 0 và nó tiếp tục tăng cho các phần tử liên tiếp tiếp theo. Ngoài ra, lập chỉ mục ngược cũng hợp lệ trong các bộ dữ liệu, tôi. e. , phần tử cuối cùng có thể được truy cập bằng cách sử dụng chỉ mục >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);1 và các số liền trước bởi >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);2, >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);3, v.v. Hãy lấy một ví dụ,
>>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);'quả táo'
Trong bảng bên dưới, chúng tôi đã đánh dấu các phần tử bộ cho cả lập chỉ mục tiến và lùi
ValueForward IndexingBackward Indexingapple0-5orange1-4banana2-3berry3-2mango4-1Thêm phần tử vào Tuple
Như chúng ta biết, các bộ dữ liệu đó là bất biến, do đó dữ liệu được lưu trữ trong một bộ dữ liệu không thể chỉnh sửa được, nhưng chắc chắn có thể thêm nhiều dữ liệu hơn vào một bộ dữ liệu. Điều này có thể được thực hiện bằng cách sử dụng toán tử bổ sung. Giả sử có một tuple,
>>> t = (1, 2, 3, 4, 5)Trong trường hợp bạn muốn thêm một phần tử khác là >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);4 vào bộ thì bạn có thể làm như sau
>>> t = t + (7,)Như bạn có thể thấy, chúng tôi đã sử dụng toán tử cộng để >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);5 cho bộ dữ liệu >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);6
>>> print (t);(1, 2, 3, 4, 5, 7)
Do đó, chúng ta có thể thêm bất kỳ loại phần tử nào vào một bộ, sử dụng toán tử >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);7
Nếu chúng ta thử suy nghĩ, chúng ta có thể làm gì khác với toán tử >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);7, chúng ta có thể nhận ra rằng nó cũng có thể được sử dụng để kết hợp hai bộ dữ liệu. Ví dụ
>>> print ((1, 2, 5, 8) + (2, 9, 4));(1, 2, 5, 8, 2, 9, 4)
Bạn có thể sử dụng (các) bộ để tạo một bộ khác
Xóa một Tuple
Để xóa một tuple, từ khóa >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);9 được sử dụng. Để xóa một bộ tên là >>> print (myTuple);6(mà chúng tôi đã xác định trước đó), hãy làm theo ví dụ bên dưới
>>> del (myTuple);Và >>> print (myTuple);6 sẽ bị xóa khỏi bộ nhớ
Cắt lát trong Tuples
Cắt theo bộ, hoạt động giống hệt như trong trường hợp danh sách. Hãy bắt đầu với một ví dụ
>>> print (myTuple);0(3, 4)
Ở đây, >>> emptyTuple = (); >>> anotherEmptyTuple = tuple();2 có nghĩa là, cắt bộ dữ liệu bắt đầu từ chỉ mục >>> emptyTuple = (); >>> anotherEmptyTuple = tuple();3 cho đến chỉ mục >>> emptyTuple = (); >>> anotherEmptyTuple = tuple();4 và lấy phần đó ra
Việc cắt lát cũng có thể được thực hiện ngược lại bằng cách sử dụng các chỉ số âm để duyệt qua bộ dữ liệu từ hướng ngược lại
Hoạt động và chức năng cơ bản
Các hoạt động khác nhau mà chúng ta có thể thực hiện trên các bộ dữ liệu rất giống với danh sách. Trên thực tế, bạn vừa thấy toán tử >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);7 với các bộ dữ liệu, nó hoạt động với các bộ dữ liệu giống như nó hoạt động với một danh sách. Một số toán tử khác cho bộ dữ liệu bao gồm
Phép nhân
Nhân một bộ với bất kỳ số nguyên nào, x sẽ chỉ tạo một bộ khác với tất cả các phần tử từ bộ đầu tiên được lặp lại x số lần. Ví dụ, >>> emptyTuple = (); >>> anotherEmptyTuple = tuple();6 có nghĩa là, các phần tử của bộ dữ liệu >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);6 sẽ được lặp lại >>> emptyTuple = (); >>> anotherEmptyTuple = tuple();8 lần
>>> print (myTuple);1(2, 5, 2, 5, 2, 5)
Phép cộng
Sử dụng toán tử cộng, với hai bộ trở lên, cộng tất cả các phần tử vào một bộ mới. Ví dụ,
>>> print (myTuple);2(2, 5, 0, 1, 3, 4)
>>> emptyTuple = (); >>> anotherEmptyTuple = tuple();9 từ khóa
>>> emptyTuple = (); >>> anotherEmptyTuple = tuple();9 từ khóa, không chỉ có thể được sử dụng với bộ dữ liệu mà còn với chuỗi và danh sách nữa. Dùng để kiểm tra xem có phần tử nào trong dãy hay không. Nó trả về >>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);1 nếu phần tử được tìm thấy, nếu không thì >>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);2. Ví dụ,
>>> print (myTuple);3Đúng sai
Chức năng >>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);3
Như bạn có thể đã đoán, hàm này được sử dụng để lấy số lượng phần tử bên trong bất kỳ bộ dữ liệu nào
>>> print (myTuple);43
>>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);4 chức năng
Điều này được sử dụng để so sánh hai bộ dữ liệu. Nó sẽ trả về >>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);5, >>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);6 hoặc >>> secondTuple = 1, 2, "python", 4 >>> print (secondTuple);1, tùy thuộc vào việc hai bộ dữ liệu được so sánh có giống nhau hay không
Hàm >>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);4 lấy hai bộ dữ liệu làm đối số, trong đó cả hai bộ dữ liệu được so sánh. Nếu T1 là bộ thứ nhất và T2 là bộ thứ hai, thì
- nếu T1 > T2 thì cmp(T1, T2) trả về 1
- nếu T1 = T2 thì cmp(T1, T2) trả về 0
- nếu T1 > T2 thì cmp(T1, T2) trả về -1
Hàm >>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);9 và >>> t = (1, 2, 3, 4, 5)0
Để tìm giá trị lớn nhất trong một bộ, chúng ta có thể sử dụng hàm >>> example = "apple", "orange", "banana", "berry", "mango" >>> print (example[0]);9, trong khi để tìm giá trị nhỏ nhất, có thể sử dụng hàm >>> t = (1, 2, 3, 4, 5)0