Bạn có thể trả về nhiều giá trị từ một hàm trong Python không?
1) Sử dụng đối tượng. Điều này cũng tương tự với C/C++ và Java, chúng ta có thể tạo một lớp (trong C là struct) để chứa nhiều giá trị và trả về một đối tượng của lớp Show # Một chương trình Python trả về nhiều # Hàm này trả về một đối tượng Test # Mã trình điều khiển để kiểm tra phương pháp trên thợ cắt tóc 2) Sử dụng Tuple. Tuple là một chuỗi các mục được phân tách bằng dấu phẩy. Nó được tạo ra có hoặc không có (). Tuples là bất biến. Xem phần này để biết chi tiết về Tuple và danh sách # Một chương trình Python trả về nhiều # Hàm này trả về một bộ # Mã trình điều khiển để kiểm tra phương pháp trên thợ cắt tóc 3) Sử dụng danh sách. Một danh sách giống như một mảng các mục được tạo bằng dấu ngoặc vuông. Chúng khác với mảng vì chúng có thể chứa các mục thuộc các loại khác nhau. Danh sách khác với bộ dữ liệu vì chúng có thể thay đổi # Một chương trình Python trả về nhiều # Hàm này trả về một danh sách # Mã trình điều khiển để kiểm tra phương pháp trên ['prutor', 20] 4) Sử dụng từ điển. Từ điển tương tự như hàm băm hoặc bản đồ trong các ngôn ngữ khác. Xem cái này để biết chi tiết về từ điển # Một chương trình Python trả về nhiều # Hàm này trả về một từ điển # Mã trình điều khiển để kiểm tra phương pháp trên {'x'. 20, 'str'. 'thợ cắt tỉa. ai'} 5) Sử dụng Lớp dữ liệu (Python 3. 7+). Trong Trăn 3. 7 trở lên, Lớp dữ liệu có thể được sử dụng để trả về một lớp với các phương thức duy nhất được thêm tự động. Mô-đun Lớp dữ liệu có một trình trang trí và các chức năng để tự động thêm các phương thức đặc biệt đã tạo, chẳng hạn như __init__() và __repr__() trong các lớp do người dùng định nghĩa Khi bạn trả về nhiều giá trị bằng cách sử dụng (các) dấu phẩy, chúng sẽ được trả về ở dạng một bộ. Như được hiển thị trong đoạn mã trên, hai chuỗi ví dụ 2. Sử dụng từ điển
đầu ra {1: 'John', 2: 'Armin'} Khi bạn trả về các giá trị bằng từ điển, bạn sẽ dễ dàng theo dõi các giá trị được trả về bằng cách sử dụng các phím. Câu lệnh return trả về hai biến ở dạng từ điển Hàm Python có thể trả về nhiều biến. Các biến này có thể được lưu trữ trực tiếp trong các biến. Một hàm không bắt buộc phải trả về một biến, nó có thể trả về 0, một, hai hoặc nhiều biến Đây là thuộc tính riêng của Python, các ngôn ngữ lập trình khác như C++ hay Java mặc định không hỗ trợ tính năng này khóa học liên quan. Hoàn thành khóa học & bài tập lập trình Python Thí dụGiới thiệuCác biến được định nghĩa trong hàm chỉ được biết trong hàm. Đó là do phạm vi của biến. Nói chung, đó không phải là vấn đề, trừ khi bạn muốn sử dụng đầu ra của hàm trong chương trình của mình Trong trường hợp đó, bạn có thể trả về các biến từ một hàm. Trong trường hợp đơn giản nhất, bạn có thể trả về một biến duy nhất 1 def complexfunction(a,b): Gọi hàm với hàm phức tạp (2,3) và đầu ra của nó có thể được sử dụng hoặc lưu Nhưng nếu bạn có nhiều biến trong một hàm mà bạn muốn truy cập thì sao? nhiều trở lạiTạo một hàm getPerson(). Như bạn đã biết một hàm có thể trả về một biến nhưng cũng có thể trả về nhiều biến Trong hướng dẫn này, chúng tôi xem xét Python. Trả về nhiều giá trị từ một hàm. Chúng tôi giải thích chi tiết các phương pháp khác nhau và liệt kê những thiếu sót của chúng Mục lục - Python trả về nhiều giá trị
Python trả về nhiều giá trịCác hàm được sử dụng để thực hiện một tác vụ cụ thể mà rất có thể liên quan đến việc trả về một giá trị cụ thể. Tuy nhiên, một vài trường hợp sử dụng có thể yêu cầu bạn trả về hai hoặc nhiều giá trị. Trong các ngôn ngữ lập trình khác, mã để đạt được điều này có thể khá phức tạp nhưng Python cung cấp một số phương thức tiện dụng để trả về nhiều giá trị Hầu hết các phương thức này liên quan đến việc sử dụng kiểu dữ liệu tập hợp để trả về các giá trị này. Chúng tôi đã xem xét kỹ tất cả chúng bên dưới Sử dụng các giá trị được phân tách bằng dấu phẩy (Tuples)Trong phương pháp này, chúng tôi sử dụng Python để trả về nhiều giá trị bằng cách tách chúng bằng dấu phẩy. Python về cơ bản sử dụng một tuple để đạt được điều này Mã để đạt được điều này như sau.
Một sự nhầm lẫn phổ biến ở đây là cú pháp của tuple yêu cầu một cặp dấu ngoặc (). Mặc dù điều này đúng, nhưng không phải lúc nào Python cũng yêu cầu dấu ngoặc để xác định một bộ Sử dụng danh sách PythonTương tự như các phương thức trước, danh sách cũng có thể được sử dụng để trả về nhiều giá trị. Trong trường hợp bạn không quen thuộc với danh sách, chúng là tập hợp các mục. Chúng khá giống với mảng tuy nhiên chúng có thể được sử dụng để lưu trữ các giá trị của các loại dữ liệu khác nhau Vì chúng là tập hợp các mục nên chúng tôi có thể thêm giá trị vào danh sách và trả về danh sách Mã để trả về nhiều giá trị bằng cách sử dụng danh sách.
Trong phương pháp này, bạn sẽ phải sử dụng chỉ mục của danh sách để sử dụng các giá trị riêng lẻ Sử dụng từ điển PythonTrong phương pháp trước đó, việc truy cập một giá trị cụ thể sẽ gặp rắc rối. Tuy nhiên, đây không phải là vấn đề khi sử dụng từ điển để trả về nhiều giá trị. Điều này là do chúng tôi có thể sử dụng các tên khóa có liên quan và chúng có thể được truy cập dễ dàng Mã để làm như vậy là như sau.
Trong phương thức này, các giá trị được trả về có thể dễ dàng được truy cập trong các khóa của chúng Sử dụng lớp dữ liệu PythonTrong phương pháp này, chúng tôi sử dụng Lớp dữ liệu để trả về nhiều giá trị. Các lớp dữ liệu là một phương pháp thêm các phương thức cụ thể vào một lớp do người dùng định nghĩa. Phương pháp này đã được giới thiệu trong phiên bản Python 3. 7 |