Tuple

Python SELF VI
Mức độ , Bài học
Có sẵn

10.1 Tuple và các thuộc tính của nó

Tuple là một trong bốn loại kiểu dữ liệu tích hợp trong Python.

Như bạn đã biết, trong Python có một số kiểu dữ liệu tích hợp cho phép lưu trữ nhóm các đối tượng. Đó là list — danh sách, tuple — tuple, set — tập hợp, dictionary — từ điển. Hôm nay chúng ta sẽ xem xét tuple, kiểu đơn giản nhất trong số này.

Tuple (tuple) cho phép lưu trữ nhiều phần tử. Mỗi phần tử có một số thứ tự của riêng nó, điều này làm cho tuple có thứ tự — ordered. Trong điều này, nó giống danh sách.

Tuple không thể thay đổi — một khi được tạo ra, nó không thay đổi, làm cho nó lý tưởng để lưu trữ dữ liệu không nên bị thay đổi trong chương trình. Vì vậy, đặc điểm thứ hai của nó là không thay đổi (immutable).

Đối với các bản sao — tuple có thể lưu trữ các phần tử giống nhau nhiều lần — allow duplicates. Cũng giống như danh sách.

Hữu ích. Có thể nghĩ tuple như một danh sách không thay đổi, thay vì dấu ngoặc vuông [], nó sử dụng dấu ngoặc tròn ().

10.2 Tạo tuple

Tuple là các chuỗi không thay đổi của các phần tử có thể được tạo theo nhiều cách khác nhau. Đây là những cách phổ biến nhất:

Tuyên bố trực tiếp:

Tuple có thể được tạo trực tiếp bằng cách sử dụng dấu ngoặc tròn () và dấu phẩy để phân tách các phần tử.


tuple1 = (1, 2, 3)
tuple2 = ("apple", "banana", "cherry", "apple", "cherry")
tuple3 = (1, "apple", True)

Không có dấu ngoặc:

Python cho phép tạo tuple mà không cần sử dụng dấu ngoặc, chỉ cần phân tách các phần tử bằng dấu phẩy.


tuple1 = 1, 2, 3
tuple2 = "apple", "banana", "cherry", "apple", "cherry"
tuple3 = 1, "apple", True

Tuple có một phần tử:

Để tạo tuple với một phần tử, cần phải đặt dấu phẩy sau phần tử đó.


tuple1 = (1,)
tuple2 = ("apple",)
tuple3 = (True,)

Sử dụng tuple():

Hàm tuple() chuyển đổi một đối tượng có thể lặp lại thành tuple. Đó có thể là danh sách, chuỗi hoặc bất kỳ đối tượng nào có thể lặp lại.


list_to_tuple = tuple([1, 2, 3])

10.3 Mở gói các phần tử của tuple

Khi làm việc với tuple, bạn có thể đóng gói nhiều phần tử thành một tuple hoặc mở gói tuple thành nhiều biến, điều này đơn giản hóa mã:

Mở gói cơ bản

Ví dụ về việc mở gói tuple vào các biến:


my_tuple = (1, 2, 3)
x, y, z = my_tuple

Ở đây biến x, yz nhận các giá trị 1, 23 tương ứng.

Mở gói mở rộng

Python cũng hỗ trợ mở gói mở rộng, cho phép lấy các phần của tuple vào một danh sách, sử dụng ký tự *:


a, *b, c = (1, 2, 3, 4, 5)  # a = 1, b = [2, 3, 4], c = 5

Trong ví dụ này, ac nhận giá trị đầu tiên và cuối cùng, còn b trở thành danh sách chứa tất cả các giá trị còn lại.

Áp dụng trong hàm

Mở gói tuple thường được sử dụng khi truyền tham số trong hàm. Điều này đặc biệt hữu ích khi hàm nhận một số lượng tham đối không cố định hoặc khi các tham đối được đóng gói trước thành tuple hoặc danh sách:


def func(a, b, c):
    print(a, b, c)
        
values = (1, 2, 3)
func(*values)

Đặc điểm sử dụng

Mở gói tuple yêu cầu số lượng phần tử trong tuple phải khớp chính xác với số lượng biến mà chúng được gán, nếu không sẽ xảy ra lỗi. Tuy nhiên, việc sử dụng * để thu thập các phần tử dư thừa cho phép tránh lỗi này, làm cho mã linh hoạt hơn với các thay đổi trong dữ liệu.

10.4 Danh sách các phương thức

Tuple là những đối tượng không thay đổi, vì vậy chúng gần như không có các phương thức của riêng mình. Chỉ có hai thôi 😊

Hàm count(x):

Trả về số lần x xuất hiện trong tuple. Điều này hữu ích cho việc đếm số lượng các phần tử nhất định.


t = (1, 2, 3, 2, 4, 2)
print(t.count(2)) # Sẽ in ra 3 

Hàm index(x):

Trả về chỉ số lần đầu tiên xuất hiện của phần tử x trong tuple. Nếu phần tử không được tìm thấy, sẽ xảy ra ngoại lệ ValueError.


t = (1, 2, 3, 2, 4, 2)
print(t.index(3)) # Sẽ in ra 2 

Mặc dù đây là tất cả các phương thức của lớp tuple, điều đó không có nghĩa là bạn không thể làm gì với nó. Có thể, chỉ là nó sẽ khó khăn hơn một chút.

Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION