Tuple trong Python


Tuple trong Python là một kiểu dữ liệu dùng để lưu trữ các đối tượng không thay đổi về sau (giống như hằng số). Ngày hôm nay hãy cùng MCI tìm hiểu về Tuple trong Python nhé!

  1,541 lượt xem

Nội dung bài viết

Tuple trong Python là gì?

 

Tuple trong Python là kiểu dữ liệu trong Python có chức năng lưu trữ các đối tượng có tính chất cố định (ví dụ như hằng số)

 

Để viết một Tuple, bạn đặt các phần từ nằm trong cặp ngoặc (), tất cả những gì nằm trong ngoặc là những phần tử của Tuple, được ngăn cách nhau bởi dấu phẩy. Các phần tử trong một Tuple được đánh số (index) từ 0

 

Ví dụ về Tuple

 

Cách khởi tạo Tuple

 

Sử dụng cặp dấu ngoặc () và đặt giá trị vào bên trong

 

Cú pháp: 

 

(giá trị thứ nhất,giá trị thứ hai, giá trị thứ ba,...,giá trị thứ n)

 

Ví dụ: Khởi tạo Tuple có 1 hằng số

 

>>> tup = (9) # Tuple có một giá trị là số 9
>>> tup # có kết quả là 9
>>> type(tup) # không thuộc lớp Tuple

 

=> Khi khởi tạo một Tuple có 1 giá trị thì Tuple đó trong python là kiểu dữ liệu của phần tử duy nhất.

 

Khi ta tính toán, sử dụng dấu ngoặc để được ưu tiên:

 

>>> 1 + 3 * 2 # 3 * 2 sau đó + 1 vì nhân trước cộng sau theo như toán học

 

Kết quả là:

 

7

 

>>> (1 + 3) * 3 # giờ thi ta sẽ làm phép tính trong ngoặc trước

 

Kết quả là

 

12

 

Vì vậy khi khởi tạo Tuple, ta phải thêm dấu “,” vào sau giá trị đó để báo cho Python biết đây là Tuple:

 

>>> tup = (9,)

 

>>> tup(9,)

 

>>> type(tup) # kết quả đã như mong đợi

 

<class 'tuple'>

 

Truy cập các phần tử của Tuple

 

Truy cập các phần tử bằng vòng lặp for:

 

Sau đây sẽ là cách sử dụng hàm for để truy cập phần tử cua Tuple:

 

ví dụ tuple trong python
Ví dụ về sử dụng vòng lặp for

 

Truy cập thông qua chỉ số (index):

 

Ngoài ra, còn có thể truy cập phần tử của Tuple thông qua hàm index. Các phần tử của Tuple sẽ sắp xếp theo thứ tự từ trái qua phải, bắt đầu từ số 0

 

Tuple trong python

 

(Ví dụ về truy cập thông qua chỉ số trong Tuple)

 

Hơn thế nữa còn có thể truy cập phần tử của Tuple trong python theo chỉ số âm (Negative index), các phần tử được đánh số theo thứ tự giảm dần từ 0 ...

 

 

(Ví dụ về truy cập thông qua chỉ số âm trong Tuple)

 

Cập nhật Tuples

 

Do Tuple trong python là bất biến (immutable), chính vì thế chỉ có thể truy cập các phần tử Tuple bằng các phương thức hoặc toán tử, hoặc tạo ra một Tuple hoàn toàn mới dựa trên Tuple ban đầu.

 

Ví dụ cập nhật trong Tuple

 

Các toán tử cơ bản cho Tuples

 

Cũng giống như String, Tuple có 3 toán tử:

 

Toán tử Chức năng Ví dụ
+ Dùng để tạo ra Tuple mới từ việc kết hợp 2 hoặc nhiều Tuple (1, 2, 3) + ("One","Two")--> (1, 2, 3, "One", "Two")
* Tạo ra một Tuple nối bằng việc nhân bản Tuple hiện có (1, 2) * 3--> (1, 2, 1, 2, 1, 2)
in Kiểm tra một phần tử có xuất hiện trong một Tuple hay không, kết quả là True nếu Tuple chứa phần tử đó và ngược lại "Abc" in ("One", "Abc")--> True

 

Ví dụ các toán tử trong Tuple

 

Các toán tử trong python

 

Các hàm liên quan đến Tuples

 

Hàm Mô tả
cmp(list1, list2) So sánh từng phần tử trong 2 Tuple. Hàm này đã bị loại bỏ khỏi Python3.
len(list) Đếm số phần tử trong tuple
max(list) Tìm phần tử trong Tuple có giá trị lớn nhất
min(list) Tìm phần tử trong Tuple với giá trị nhỏ nhất
tuple(seq) Chuyển đổi List thành Tuple

 

Ví dụ các hàm trong Tuple

 

Các phương thức của Tuple

 

Phương thức Mô tả
tuple.count(obj) Đếm số lần xuất hiện 'obj' trong Tuple
tuple.index(obj, [start, [stop]]) Trả về chỉ số nhỏ nhất trong danh sách tìm thấy phần tử có giá trị là obj. Lỗi ValueError sẽ xuất hiện khi không tìm thấy.
Nếu có tham số start, stop, chỉ tìm từ chỉ số start đến chỉ số stop (Và không bao gồm stop).

 

Ví dụ các phương thức trong Tuple

 

Cách xoá Tuple trong Python

 

Tuple trong python là bất biến, vì vậy bạn không thể xóa từng phần tử riêng lẻ trong tuple, thay vào đó chỉ có thể xóa hoàn toàn một tuple bằng hàm del.

 

 

Sự khác biệt giữa kiểu dữ liệu List và kiểu dữ liệu Tuple

 

Kiểu dữ liệu Tuple khác List ở chỗ Tuple không cho phép bạn sửa chữa nội dung, còn List thì có. Vì vậy, Tuple vượt trội hơn List ở những điểm sau:

 

  • Tốc độ truy xuất của Tuple vượt trội hơn kiểu dữ liệu List
  • Dung lượng bộ nhớ cần cho Tuple trong python ít hơn với List
  • Bảo vệ dữ liệu của bạn trước những thay đổi
  • Có thể dùng làm key của Dictionary - điều mà List không thể vì List là unhash object. Còn Tuple có thể là một hash object khi toàn bộ phần tử của Tuple đều là hash object.

 

Trên đây là những điều giúp bạn có thể cân nhắc việc chọn Tuple hay List để lưu dữ liệu dưới một mảng.

 

Tìm hiểu kiểu dữ liệu list trong python

Chương trình đào tạo: Phân tích dữ liệu, Khoa học dữ liệu, Kĩ sư dữ liệu, Lập trình ứng dụng.
Chất lượng nhất - Uy tín nhất - Nhiều học viên tin tưởng nhất
Hơn 8000 học viên ưu tú đã tốt nghiệp
Các khóa học

Đăng ký tư vấn khóa học

*Vui lòng nhập số điện thoại của bạn

*Vui lòng nhập họ tên của bạn

*Vui lòng chọn địa điểm học

*Vui lòng chọn giới tính

*Vui lòng chọn 1 trường


Các bài viết liên quan


Tại sao Power BI là công cụ không thể thiếu cho nhà phân tích dữ liệu?

Tìm hiểu lý do tại sao Power BI trở thành công cụ không thể thiếu cho nhà phân tích dữ liệu với các tính năng mạnh mẽ và lợi ích vượt trội.

So sánh Python và R: Lựa chọn công cụ phân tích dữ liệu tốt nhất năm 2024

Python và R: công cụ nào sẽ là lựa chọn tối ưu cho bạn trong năm 2024? Hãy cùng khám phá những điểm tương đồng và khác biệt giữa chúng để đưa ra quyết định đúng đắn cho nhu cầu phân tích dữ liệu của bạn

So sánh PySpark và Pandas: Công cụ nào tốt hơn?

Trong kỷ nguyên dữ liệu bùng nổ, việc lựa chọn công cụ phân tích dữ liệu phù hợp đóng vai trò then chốt cho sự thành công của các doanh nghiệp. Hai ứng cử viên sáng giá trong lĩnh vực này chính là PySpark và Pandas, mỗi công cụ sở hữu những điểm mạnh và điểm yếu riêng biệt. Bài viết này sẽ so sánh chi tiết PySpark và Pandas, giúp bạn đưa ra lựa chọn sáng suốt cho nhu cầu phân tích dữ liệu của bản thân.

Các bài viết liên quan