Hướng dẫn python tuple methods - phương pháp tuple python
Tuples là gồm chuỗi các mục được sắp xếp, giống như lists . Sự khác biệt chính giữa các tuple và lists là tuples không thể thay đổi (immutable) không giống như lists có thể (mutable). Đối với người lập trình mới tiếp cận với python thì list và dict có lẽ sẽ dễ tiếp cận hơn tuple Show
1. Khởi tạo một TupleCó hai cách để khởi tạo một tuple trống. Bạn có thể khởi tạo một tuple trống bằng cách có () không có giá trị nào trong chúng.
Bạn cũng có thể khởi tạo một tuple trống bằng cách sử dụng function tuple.
Một tuple với các giá trị có thể được khởi tạo bằng cách tạo một chuỗi các giá trị được phân tách bằng dấu phẩy. Điều quan trọng cần lưu ý là nếu bạn muốn tạo một tuple chỉ chứa một giá trị, bạn cần có dấu phẩy sau mục của bạn.
2. Truy cập các giá trị trong TuplesMỗi giá trị trong một tuple có một index được gán. Điều quan trọng cần lưu ý là python là ngôn ngữ dựa trên index 0. Tất cả điều này có nghĩa là giá trị đầu tiên trong tuple nằm ở chỉ số 0.
Python cũng hỗ trợ lập index âm. Index âm bắt đầu từ cuối bộ. Đôi khi có thể thuận tiện hơn khi sử dụng lập index âm để lấy mục cuối cùng trong một tuple vì bạn không cần phải biết chiều dài của một tuple để truy cập vào mục cuối cùng.
3. Cắt TupleSlices trả về một tuple mới có chứa các mục được yêu cầu. Slices là cách tốt để có được một tập hợp con các giá trị trong tuple của bạn. Đối với mã ví dụ bên dưới, nó sẽ trả về một tuple với các mục từ index 0 trở lên và không bao gồm index 2.
4. Tuples là bất biếnTuples là bất biến, điều đó có nghĩa là sau khi khởi tạo một tuple, không thể cập nhật các mục riêng lẻ trong một bộ. Như bạn có thể thấy trong đoạn mã bên dưới, bạn không thể cập nhật hoặc thay đổi giá trị của các mục tuple (điều này khác với list Python có thể thay đổi). Mặc dù các tuple là bất biến, có thể lấy các phần của tuple hiện có để tạo tuple mới như ví dụ sau đây minh họa. Mặc dù các tuple là bất biến, có thể lấy các phần của tuple hiện có để tạo tuple mới như ví dụ sau đây minh họa.5. Tuple MethodsTrước khi bắt đầu phần này, trước tiên, hãy khởi động một tuple.
6. Advantages of Tuples over ListsList và tuple là các loại dữ liệu Python tiêu chuẩn lưu trữ các giá trị theo một chuỗi. Một tuple là bất biến trong khi một list là có thể thay đổi. Dưới đây là một số lợi thế khác của tuple trên danh sách (một phần từ Stack Overflow)
Thảo luậnNếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng. Dẫn nhập KIỂU DỮ LIỆU TUPLE trong Python Trong các bài trước, Kteam đã giới thiệu đến bạn KIỂU DỮ LIỆU LIST, một container tuyệt vời trong PythonỞ bài này Kteam sẽ giới thiệu tới bạn một container khác đó chính KIỂU DỮ LIỆU TUPLE trong Python
KIỂU DỮ LIỆU SỐ và KIỂU DỮ LIỆU CHUỖI trong Python.
Công dụng: Tương tự phương thức index của kiểu dữ liệu chuỗi.Khi nào thì chọn Tuple thay cho List? là một container cũng được sử dụng rất nhiều trong các chương trình Python không thua kém gì List. (List đã được giới thiệu trong bài KIỂU DỮ LIỆU LIST TRONG PYTHON) Một Tuple gồm các yếu tố sau:
Ví dụ: 0Cách khởi tạo TupleSử dụng cặp dấu ngoặc () và đặt giá trị bên trongCú pháp:
Ví dụ: 1Cách khởi tạo Tuple 2Sử dụng cặp dấu ngoặc () và đặt giá trị bên trong
(, , .., , )
3Vì sao khi khởi tạo một Tuple với một phần tử thì kiểu kiểu dữ liệu của Tuple đó lại là kiểu dữ liệu của phần tử duy nhất đó? 4Đó là do khi bạn viết một giá trị nào đó đặt trong cặp dấu ngoặc đơn thì nó được xem là một giá trị.Vì sao lại phải xem là một giá trị? 5Vì khi ta tính toán, hay sử dụng cặp ngoặc () để được ưu tiên.Generator Expression (Kteam sẽ giới thiệu trong tương lai). Thế nên, trường hợp đó không thể tính là một Tuple. Do đó, khi muốn khởi tạo một Tuple chỉ duy nhất một phần tử, ta phải thêm dấu `,` vào sau giá trị đó, để báo cho Python biết, đây là Tuple. Sử dụng Tuple ComprehensionCú pháp:
(, , .., , ) Giống hoàn toàn với việc bạn sử dụng constructor List. Khác biệt duy nhất là constructor Tuple sẽ tạo ra một Tuple. 6Bạn hãy chú ý khi khởi tạo tuple với một giá trị.Vì sao khi khởi tạo một Tuple với một phần tử thì kiểu kiểu dữ liệu của Tuple đó lại là kiểu dữ liệu của phần tử duy nhất đó?hash object (immutable như chuỗi, Tuple) và unhash object (mutable như List) Đó là do khi bạn viết một giá trị nào đó đặt trong cặp dấu ngoặc đơn thì nó được xem là một giá trị. 7Vì sao lại phải xem là một giá trị? 8Vì khi ta tính toán, hay sử dụng cặp ngoặc () để được ưu tiên. 9Thế nên, trường hợp đó không thể tính là một Tuple. Do đó, khi muốn khởi tạo một Tuple chỉ duy nhất một phần tử, ta phải thêm dấu `,` vào sau giá trị đó, để báo cho Python biết, đây là Tuple.Sử dụng Tuple Comprehension Với Tuple thì khái niệm Comprehension này không được áp dụngMà đó được coi là Generator Expression (Kteam sẽ giới thiệu trong tương lai).Đối tượng được tạo từ Generator Expression cũng là một dạng iterable.hash object (immutable). Do đó việc bạn muốn thay đổi nội dung của nó trên lí thuyết là không. 1Sử dụng constructor Tuple Công dụng: Giống hoàn toàn với việc bạn sử dụng constructor List. Khác biệt duy nhất là constructor Tuple sẽ tạo ra một Tuple.Một số toán tử với Tuple trong Python 2Các toán tử của Tuple giống với toán tử của chuỗi. Nếu bạn đọc kĩ phần này ở bài List thì bạn sẽ thấy Kteam đề cập là toán tử của List chỉ là gần giống với toán tử của chuỗi. Lí do vì sao sẽ được giải thích trong bài sự khác biệt các toán tử của hash object (immutable như chuỗi, Tuple) và unhash object (mutable như List)Toán tử +hash object là một đối tượng bạn không thể thay đổi nội dung của nó. Và trong phần thay đổi nội dung Tuple, bạn cũng thấy ta không thể thay đổi giá trị ở bên trong Tuple. Tuy nhiên, không phải lúc nào cũng vậy. 3Toán tử *unhash object. Suy ra, ta có thể thay đổi nội dung của nó. 4Toán tử in Indexing và cắt Tuple trong Python Indexing và cắt Tuple hoàn toàn tương tự như với kiểu dữ liệu List. (Nếu chưa biết về List bạn có thể tham khảo qua các bài về KIỂU DỮ LIỆU LIST TRONG PYTHON)# way 1 z = (3, 7, 4, 2) # way 2 (tuples can also can be created without parenthesis) z = 3, 7, 4, 2 0Cú pháp:
(, , .., , ) Trả về một số nguyên, chính là số lần xuất hiện của value trong Tuple. 5Bạn hãy chú ý khi khởi tạo tuple với một giá trị.Cú pháp:
Bạn hãy chú ý khi khởi tạo tuple với một giá trị.Tương tự phương thức index của kiểu dữ liệu chuỗi. 6Vì sao khi khởi tạo một Tuple với một phần tử thì kiểu kiểu dữ liệu của Tuple đó lại là kiểu dữ liệu của phần tử duy nhất đó?Đó là do khi bạn viết một giá trị nào đó đặt trong cặp dấu ngoặc đơn thì nó được xem là một giá trị.
Với Tuple thì khái niệm Comprehension này không được áp dụng Mà đó được coi là Generator Expression (Kteam sẽ giới thiệu trong tương lai).Đối tượng được tạo từ Generator Expression cũng là một dạng iterable.Sử dụng constructor Tuple
7
8Các toán tử của Tuple giống với toán tử của chuỗi. Nếu bạn đọc kĩ phần này ở bài List thì bạn sẽ thấy Kteam đề cập là toán tử của List chỉ là gần giống với toán tử của chuỗi. Lí do vì sao sẽ được giải thích trong bài sự khác biệt các toán tử của hash object (immutable như chuỗi, Tuple) và unhash object (mutable như List)
9Thay đổi nội dung Tuple trong Python
Đáp án của phần này sẽ được trình bày ở bài tiếp theo. Tuy nhiên, Kteam khuyến khích bạn tự trả lời các câu hỏi để củng cố kiến thức cũng như thực hành một cách tốt nhất! Kết luậnBài viết này đã sơ lược cho các bạn KIỂU DỮ LIỆU TUPLE TRONG PYTHON. Ở bài sau, Kteam sẽ nói về sự khác nhau giữa toán tử ở HASH OBJECT VÀ UNHASH OBJECT. Cảm ơn bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của mình để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử thách – Không ngại khó”.Luyện tập – Thử thách – Không ngại khó”. Thảo luậnNếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng. |