Hướng dẫn what does a function with no returning value return in python? - Hàm không có giá trị trả về trả về trong python là gì?
Về hành vi thực tế, không có sự khác biệt. Tất cả họ trở lại 5 và đó là nó. Tuy nhiên, có một thời gian và địa điểm cho tất cả những điều này. Các hướng dẫn sau đây về cơ bản là cách sử dụng các phương pháp khác nhau (hoặc ít nhất là cách tôi được dạy chúng nên được sử dụng), nhưng chúng không phải là quy tắc tuyệt đối để bạn có thể trộn chúng nếu bạn cảm thấy cần thiết. Show
Sử dụng def find_prisoner_with_knife(prisoners): for prisoner in prisoners: if "knife" in prisoner.items: prisoner.move_to_inquisition() return # no need to check rest of the prisoners nor raise an alert raise_alert() 6Điều này cho biết rằng hàm thực sự có nghĩa là trả về một giá trị cho việc sử dụng sau này và trong trường hợp này, nó trả về 5. Giá trị này 5 sau đó có thể được sử dụng ở nơi khác. 6 không bao giờ được sử dụng nếu không có giá trị trả về khả thi nào khác từ hàm.Trong ví dụ sau, chúng tôi trở lại ____ 20 1 nếu 0 được đưa ra là con người. Nếu đó không phải là con người, chúng ta sẽ trở lại 5 vì 0 không có 1 (giả sử đó không phải là động vật hay gì đó).
Sử dụng def set_mother(person, mother): if is_human(person): person.mother = mother 6Điều này được sử dụng vì lý do tương tự như 7 trong các vòng lặp. Giá trị trả về không quan trọng và bạn chỉ muốn thoát toàn bộ hàm. Nó cực kỳ hữu ích ở một số nơi, mặc dù bạn không cần nó thường xuyên.Chúng tôi đã có 15 8 và chúng tôi biết một trong số họ có một con dao. Chúng tôi lặp qua từng 9 từng người một để kiểm tra xem họ có dao không. Nếu chúng ta đánh người bằng dao, chúng ta có thể thoát khỏi chức năng vì chúng ta biết chỉ có một con dao và không có lý do gì khi kiểm tra phần còn lại của 8. Nếu chúng ta không tìm thấy 9 bằng một con dao, chúng ta sẽ đưa ra một cảnh báo. Điều này có thể được thực hiện theo nhiều cách khác nhau và sử dụng 6 có lẽ thậm chí không phải là cách tốt nhất, nhưng đó chỉ là một ví dụ để chỉ ra cách sử dụng 6 để thoát khỏi chức năng.
Lưu ý: Bạn không bao giờ nên làm def add(x, y): total = x + y return total4, vì giá trị trả về không có nghĩa là bị bắt. Không sử dụng def set_mother(person, mother): if is_human(person): person.mother = mother 6 ở tất cảĐiều này cũng sẽ trả về 5, nhưng giá trị đó không có nghĩa là được sử dụng hoặc bắt được. Nó đơn giản có nghĩa là chức năng kết thúc thành công. Về cơ bản, nó giống như 6 trong các chức năng def add(x, y): total = x + y return total8 trong các ngôn ngữ như C ++ hoặc Java. Trong ví dụ sau, chúng tôi đặt tên của mẹ và sau đó chức năng thoát ra sau khi hoàn thành thành công.
Lưu ý: Bạn không bao giờ nên làm def add(x, y): total = x + y return total9, vì giá trị trả về không có nghĩa là bị bắt. Hãy cùng xem một ví dụ đơn giản để thêm hai số và trả lại tổng số cho người gọi. Chúng ta có thể tối ưu hóa chức năng bằng cách có biểu thức trong câu lệnh trả về. def add(x, y): return x + y Mỗi chức năng trả về một cái gì đóHãy để xem những gì được trả lại khi một hàm không có câu lệnh trả lại. >>> def foo(): ... pass ... >>> >>> print(foo()) None >>>Python không trả lại Điều gì xảy ra khi tuyên bố trả lại không có gì?Khi câu lệnh trả về không có giá trị, hàm không trả về không.None. >>> def return_none(): ... return ... >>> print(return_none()) None >>> Các chức năng Python có thể có nhiều câu lệnh hoàn trảdef type_of_int(i): if i % 2 == 0: return 'even' else: return 'odd' Hàm Python có thể trả về nhiều loại giá trịKhông giống như các ngôn ngữ lập trình khác, các hàm Python không bị hạn chế để trả về một loại giá trị duy nhất. Nếu bạn nhìn vào định nghĩa chức năng, nó không có bất kỳ thông tin nào về những gì nó có thể trả lại. Hãy cùng xem xét một ví dụ trong đó hàm sẽ trả về nhiều loại giá trị. def get_demo_data(object_type): if 'str' == object_type: return 'test' elif 'tuple' == object_type: return (1, 2, 3) elif 'list' == object_type: return [1, 2, 3] elif 'dict' == object_type: return {"1": 1, "2": 2, "3": 3} else: return None Trả về nhiều giá trị trong một câu lệnh trả vềChúng ta có thể trả về nhiều giá trị từ một câu lệnh trả về duy nhất. Các giá trị này được phân tách bằng dấu phẩy và được trả lại dưới dạng một tuple cho chương trình người gọi. def return_multiple_values(): return 1, 2, 3 print(return_multiple_values()) print(type(return_multiple_values())) Output: 0Câu lệnh trả về Python với khối cuối cùngKhi câu lệnh trả về được thực thi bên trong khối Except Try-Except, mã khối cuối cùng được thực thi trước khi trả lại giá trị cho người gọi. 1Output: 2Nếu khối cuối cùng có câu lệnh trả về, thì câu lệnh trả về trước đó sẽ bị bỏ qua và giá trị từ khối cuối cùng được trả về. 3Output:: 4References:
Trả lại mà không có giá trị có ý nghĩa gì trong Python?Một câu lệnh trả về được sử dụng để kết thúc việc thực hiện cuộc gọi chức năng và trả về kết quả (giá trị của biểu thức theo từ khóa trả về) cho người gọi.Các tuyên bố sau các tuyên bố trả lại không được thực thi.Nếu câu lệnh trả về không có bất kỳ biểu thức nào, thì giá trị đặc biệt không được trả về.If the return statement is without any expression, then the special value None is returned.
Một chức năng không trả lại trở lại là gì?Nếu không có câu lệnh trả về xuất hiện trong một định nghĩa hàm, điều khiển sẽ tự động quay lại hàm gọi sau khi câu lệnh cuối cùng của hàm được gọi được thực thi.Trong trường hợp này, giá trị trả về của hàm được gọi là không xác định.control automatically returns to the calling function after the last statement of the called function is executed. In this case, the return value of the called function is undefined.
Điều gì xảy ra khi chúng ta không nhận được giá trị trả về từ một hàm?Nói chung: Khi một hàm trả về giá trị không khoảng trống và giá trị không được lưu trữ ở bất cứ đâu, giá trị sẽ bị phá hủy.the value is destroyed. |