Tạo tuple python
Tuple là một kiểu tập hợp dữ liệu khác trong Python và cũng được sử dụng rất rộng rãi. Mặc dù tuple có điểm tương tự như danh sách, giữa hai kiểu dữ liệu có nhiều điểm khác biệt về bản chất và mục đích sử dụng. Bài học này sẽ hướng dẫn chi tiết về cấu trúc dữ liệu tuple cũng như phân biệt khi nào sử dụng tuple, khi nào sử dụng danh sách Show NỘI DUNG CỦA BẢNG Ví dụ minh họa>>> vn = ('Vietnam', 330_000, 95_000_000, 2500) >>> us = ('USA', 9_600_000, 350_000_000, 40_000) >>> us_info = f'''Official name: {us[0]} .. Area: {us[1]} km2 .. Population: {us[2]} .. GDP/capital: {us[3]} USD''' >>> print(us_info) Official name: USA Area: 9600000 km2 Population: 350000000 GDP/capital: 40000 USD >>> vn_info = f'''Official name: {vn[0]} .. Area: {vn[1]} km2 .. Population: {vn[2]} .. GDP/capital: {vn[3]} USD''' >>> print(vn_info) Official name: Vietnam Area: 330000 km2 Population: 95000000 GDP/capital: 2500 USD Trong ví dụ trên chúng tôi đã tạo ra 2 biến kiểu tuple chứa thông tin địa lý cơ bản về Việt Nam và Mỹ, bao gồm tên tiếng Anh, diện tích, dân số, GDP bình quân đầu người >>> vn = ('Vietnam', 330_000, 95_000_000, 2500) >>> us = ('USA', 9_600_000, 350_000_000, 40_000) So với danh sách, cách tạo tuple chỉ khác ở cặp dấu () (so với [] của danh sách). Các phần tử của tuple có thể thuộc bất kỳ loại nào và cần được phân tách bằng dấu phẩy Sau đó chúng ta sử dụng các thông tin trên để viết ra đoạn giới thiệu về quốc gia us_info = f'''Official name: {us[0]} .. Area: {us[1]} km2 .. Population: {us[2]} .. GDP/capital: {us[3]} USD''' print(us_info) Hãy để ý cách chúng ta sử dụng các thông tin được lưu trong tuple. Bounds is used allowlicant slice [] to query output section. Về dạng thức không có gì khác biệt so với việc sử dụng danh sách trong Python Nếu muốn viết ở dạng tập lệnh, hãy sử dụng mã sau vn = ('Vietnam', 330_000, 95_000_000, 2500) us = ('USA', 9_600_000, 350_000_000, 40_000) vn_info = f'''Official name: {vn[0]} Area: {vn[1]} km2 Population: {vn[2]} GDP/capital: {vn[3]} USD''' us_info = f'''Official name: {us[0]} Area: {us[1]} km2 Population: {us[2]} GDP/capital: {us[3]} USD''' print(vn_info) print(us_info) Tuple data type in PythonKiểu dữ liệu tuple trong Python có thể chứa nhiều giá trị viết trong dấu ngoặc kép (). Mỗi giá trị được tách rời nhau bởi một dấu phẩy vn = ('Vietnam', 330_000, 95_000_000, 2500) us = ('USA', 9_600_000, 350_000_000, 40_000) Lưu ý. nếu chỉ có 1 phần tử trong tuple, bạn vẫn phải viết dấu phẩy sau nó. If not write com com, Python will not coi it is a tuple. Ví dụ tuple với 1 phần tử. >>> vn = ('Vietnam', 330_000, 95_000_000, 2500) >>> us = ('USA', 9_600_000, 350_000_000, 40_000)1 One tuple could not contain any element section. Khi đó nó được gọi là một tuple rỗng. Tuple trống biểu diễn là >>> vn = ('Vietnam', 330_000, 95_000_000, 2500) >>> us = ('USA', 9_600_000, 350_000_000, 40_000)2. Ví dụ, >>> vn = ('Vietnam', 330_000, 95_000_000, 2500) >>> us = ('USA', 9_600_000, 350_000_000, 40_000)3 Các giá trị trong một bộ có thể thuộc bất kỳ loại dữ liệu nào (cả kiểu danh sách hoặc bộ khác). Thường người ta vẫn sử dụng tuple để nhóm các dữ liệu khác nhau vào một đơn vị. Như ở trên, chúng ta đưa nhóm tên quốc gia, diện tích, dân số, GDP bình quân vào cùng một bộ Trong trường hợp phần tử của một bộ có thể là một bộ khác, người ta gọi là bộ lồng nhau (bộ lồng nhau). Ví dụ ________số 8Đặc điểm quan trọng của tuple là tính bất biến (immutability) Đặc điểm này khiến tuple không thể cập nhật một khi đã được tạo ra. Bạn chỉ có thể lấy một phần của tuple để tạo ra tuple mới chứ không thể cập nhật tuple Tính bất biến cũng khiến bạn không thể xóa một phần tuple. You only could delete all the tuple by command del like after >>> sg = ('Singapore', 5_639_000, ('Chinese', 'English')) >>> del sg Bạn có thể truy xuất các phần tử của bộ dữ liệu cho phép lát cắt toán học và lát cắt phạm vi giống như đối chiếu với danh sách. Hai phép toán này đã trình bày kỹ năng trong bài học về danh sách trong Python. Bạn có thể xem lại nếu không nhớ >>> vn = ('Vietnam', 330_000, 95_000_000, 2500) >>> us = ('USA', 9_600_000, 350_000_000, 40_000)0 Các phép toán và hàm trên tupleKiểu tuple trong Python cũng hỗ trợ các phép toán giống như danh sách, bao gồm
Vui lòng xem cách sử dụng các phép toán này thông qua ví dụ sau >>> vn = ('Vietnam', 330_000, 95_000_000, 2500) >>> us = ('USA', 9_600_000, 350_000_000, 40_000)4 Python cung cấp sẵn các hàm làm việc với tuple, bao gồm len() – lấy số phần tử, max() – lấy phần tử lớn nhất, min() – lấy phần tử nhỏ nhất, tuple() – chuyển đổi danh sách về . Vui lòng xem cách sử dụng các chức năng trên ví dụ sau >>> vn = ('Vietnam', 330_000, 95_000_000, 2500) >>> us = ('USA', 9_600_000, 350_000_000, 40_000)5 Chú ý, min() và max() chỉ hoạt động nếu tất cả các phần tử của tuple có cùng kiểu (ví dụ, cùng là số hoặc cùng là thứ hạng). If not same type, allow so sánh của các chức năng này không hoạt động được. Thực tế, hai chức năng này gần như không có ý nghĩa với tuple Lớp tuple cũng cung cấp các phương thức đếm() – đếm số lần xuất hiện của 1 giá trị và chỉ mục() – xác định số lượng duy nhất của phần tử >>> vn = ('Vietnam', 330_000, 95_000_000, 2500) >>> us = ('USA', 9_600_000, 350_000_000, 40_000)0 Tuple hay danh sách trong Python?Qua nội dung của bài này và bài học trước đó (danh sách trong Python), bạn có thể thấy có rất nhiều điểm tương đồng giữa tuple và danh sách. Tuy nhiên, tuple và list có những điểm phân biệt rõ ràng. Sự khác biệt này quyết định giá trị sử dụng của từng loại dữ liệu Thứ nhất, danh sách là kiểu dữ liệu khả biến (có thể thay đổi) trong khi tuple là kiểu dữ liệu bất biến (không thay đổi). Nghĩa là, khi đã được tạo ra trong bộ nhớ, danh sách có thể thay đổi còn tuple thì không thể thay đổi. Các thao tác biến đổi trên tuple sẽ đều tạo ra đối tượng mới chứ không thay đổi đối tượng có sẵn Từ cạnh nào có thể cấu hình dung tuple là phiên bản chỉ đọc thu gọn của danh sách With the privacy on, list used to be used to data for program. Ví dụ, bạn có thể đọc dữ liệu từ tệp vào danh sách, thực hiện các biến đổi trên danh sách và lưu trở lại tệp. Dữ liệu được lưu trong danh sách được xử lý bởi linh hoạt chuyển đổi linh hoạt hơn. You could not use tuple for this target Trong khi đó, tuple được sử dụng để truyền dữ liệu trong chương trình. Ví dụ, nếu một hàm cần trả lại nhiều kết quả, thì nó có thể trả về một bộ dữ liệu. Kết quả trả về ở dạng tuple nhẹ, nhanh và an toàn hơn. Ở đây mặc dù có thể sử dụng danh sách nhưng không khuyến mãi Mặc dù list cho phép lưu trữ dữ liệu thuộc nhiều kiểu khác nhau, người ta thường sử dụng list để lưu dữ liệu có cùng kiểu. Trong khi đó, tuple thường được sử dụng để lưu trữ kết quả thuộc các loại khác nhau để truyền lại trong chương trình Ví dụ, nếu khách hàng có các thông tin về họ tên, email, số điện thoại, địa chỉ. Danh sách khách hàng (tập hợp bản ghi) nên được lưu trong danh sách. Nếu cần truyền thông tin về một khách hàng (dữ liệu 1 bản ghi, ví dụ, trả về từ hàm) thì nên sử dụng tuple chứa các thông tin của khách hàng đó Kết luậnBài học đã hướng dẫn cách sử dụng kiểu dữ liệu tuple trong Python và phân biệt tuple với danh sách. Nhìn chung có thể cấu hình dung tuple như một phiên bản chỉ đọc và đơn giản hơn của danh sách được sử dụng để truyền dữ liệu trong chương trình |