Chúng ta có thể sử dụng năng suất và lợi nhuận trong cùng một chức năng Python không?

Trong Python, định nghĩa về trình tạo được thực hiện với sự trợ giúp của câu lệnh năng suất. Do đó, trước khi chúng ta đi sâu vào chi tiết cụ thể về lợi nhuận thực sự mang lại, điều quan trọng là bạn phải có cái nhìn tổng quan về máy phát điện. Nếu bạn đã tiếp xúc với Python, thì rất có thể bạn đã từng làm việc với các trình tạo Python trước đây. Trình tạo đóng một chức năng quan trọng trong Python. Trong Python, các trình vòng lặp có thể được tạo bằng trình tạo, tuy nhiên quá trình này có dạng hơi khác

Trình tạo Python là các chức năng có thể bị tạm dừng và tiếp tục động và tạo ra một loạt các kết quả. Chúng cũng có thể được sử dụng để tạo số ngẫu nhiên. Trong Python 2. 2, máy phát điện lần đầu tiên được giới thiệu như một tính năng tự chọn. Trong Python 2. 3, chúng được thực hiện bắt buộc. Các hàm tạo trong Python 2. 5 đã được cải thiện rất nhiều, mặc dù thực tế là chúng đã có đủ sức mạnh

Để duy trì khả năng tương thích ngược, việc bổ sung các trình tạo trong Python 2. 2 dẫn đến việc giới thiệu một từ khóa mới gọi là "năng suất". Để sử dụng trình tạo, chúng tôi được yêu cầu nhập chúng từ mô-đun _future_. Khi trình tạo trở thành mặc định trong Python phiên bản 2. 3, điều này đã được thay đổi để phản ánh thực tế là thay đổi không còn cần thiết

Có thể tạm dừng thực thi chức năng bằng cách sử dụng câu lệnh năng suất, sau đó trả về một giá trị cho người gọi trong khi lưu trạng thái của chức năng để tiếp tục sau này. Điều này có nghĩa là toàn bộ trình tạo vẫn có thể được khởi động lại sau khi nhận được giá trị trả về. Việc thực thi hàm được kết thúc bằng câu lệnh return, câu lệnh này cũng trả về một giá trị cho người đã gọi hàm. Chức năng của bạn sẽ không trả về bất cứ điều gì nếu nó bị thiếu

Năng suất Python là gì?

Trong các trình tạo Python, câu lệnh năng suất thay thế cho hàm trả về để trả lại giá trị cho người đã gọi trình tạo mà không loại bỏ bất kỳ biến cục bộ nào. Để hiểu rõ hơn về chức năng mà câu lệnh suất thực hiện trong lập trình Python, trước tiên bạn cần làm quen với trình tạo

Sự khác biệt giữa các hàm tạo và các hàm thông thường là các hàm tạo có câu lệnh "yield" trong định nghĩa của chúng. Điều này bắt đầu với từ khóa "yield", xác định đối tượng trình tạo sẽ được trả lại cho người đã gọi hàm này

Trong Python, một loại hàm cụ thể được gọi là "trình tạo" là một loại hàm, thay vì trả về giá trị dữ liệu cho người đã gọi hàm, thay vào đó, nó trả về một đối tượng trình tạo khác. Việc thực thi chức năng có thể tạm dừng, trạng thái có thể được lưu lại và chức năng có thể được tiếp tục lại sau đó nhờ từ khóa suất

Ví dụ

Hãy xem ví dụ sau -

đầu ra

The number of 'p' in word is: 2

Trả về Python là gì?

Ngược lại với câu lệnh yield, câu lệnh return khiến một hàm kết thúc trong khi chuyển một giá trị trở lại hàm đã gọi nó. Các hàm có bản chất thủ tục hơn không trả lại bất kỳ thứ gì một cách rõ ràng cho người gọi của chúng và thay vào đó trả về một giá trị được gửi lại cho hàm gọi. Mặc dù một hàm có thể có một số câu lệnh trả về, nhưng chỉ một trong số chúng có thể được gọi cho mỗi và mọi lời gọi tương ứng của các câu lệnh đó

Hầu như luôn luôn, một câu lệnh trả về sẽ được đặt ở cuối khối hàm và mục đích của nó là trả về kết quả cuối cùng của việc thực hiện tất cả các câu lệnh có trong hàm đó. Tuy nhiên, một câu lệnh return cũng có thể xuất hiện sớm hơn trong khối chức năng để tạm dừng việc thực hiện tất cả các câu lệnh tiếp theo trong khối đó. Đây sẽ là trường hợp nếu nó được sử dụng để ngăn chức năng được thực thi. Điều này dẫn đến việc thực thi chương trình tại người gọi được khởi động lại ngay lập tức. Loại đối tượng trả về "Không" là tương đương trong Python khi không có giá trị nào được cung cấp cho đối tượng trả về

Ví dụ

Ví dụ sau cho thấy việc sử dụng return trong Python −

đầu ra

Happy Birthday
Pradeep

Bảng sau đây nêu bật những khác biệt chính giữa Yield và Return trong Python –

Cơ sở so sánhYieldReturnBasicsTrong hầu hết các trường hợp, bạn sẽ cần sử dụng hàm năng suất để chuyển đổi một hàm Python điển hình thành trình tạo. Trong hầu hết các trường hợp, kết thúc của một thực thi được báo hiệu bằng cách sử dụng từ khóa return, từ khóa này "trả về" kết quả cho câu lệnh đã gọi nó. HàmNó thay thế trả về của hàm để tạm dừng việc thực thi hàm mà không làm mất bất kỳ biến cục bộ nào. Nó thoát khỏi một chức năng và trả về một giá trị cho người gọi nó. Công dụng Khi trình tạo đưa ra kết quả trung gian cho người gọi, người gọi sẽ sử dụng chức năng này. Khi một chức năng được chuẩn bị để truyền đạt một giá trị, nó là cần thiết để sử dụng. Thực thiMã được viết sau câu lệnh năng suất được thực thi trong lệnh gọi hàm sau. Trong khi mã được viết sau câu lệnh return sẽ không được thực thi. CompilationIt có khả năng chạy nhiều lần. Nó chỉ chạy một lần tại một thời điểm

Phần kết luận

Câu lệnh yield tạo ra một đối tượng trình tạo và có thể trả về nhiều giá trị cho người gọi mà không kết thúc chương trình, trong khi câu lệnh return được sử dụng để trả về giá trị cho người gọi từ bên trong một hàm và nó kết thúc chương trình. Câu lệnh return được sử dụng để trả về giá trị cho người gọi từ bên trong một hàm

Bạn có thể sử dụng return và print bằng Python không?

Các câu lệnh return và print đều quan trọng như nhau đối với lập trình. Nếu bạn chỉ muốn thực thi một hàm đơn giản trả về một giá trị, câu lệnh return là đủ. Trong trường hợp muốn trả về giá trị nhưng đồng thời phải in ra terminal thì cần sử dụng phương thức print[]

Sự khác biệt giữa lợi nhuận và năng suất trong Python là gì?

Câu lệnh năng suất kéo hàm và trả lại giá trị cho người gọi hàm và khởi động lại từ nơi nó bị bỏ dở. Câu lệnh suất có thể được gọi nhiều lần. Trong khi câu lệnh return kết thúc việc thực thi hàm và trả lại giá trị cho người gọi

Sự khác biệt giữa lợi nhuận và lợi tức là gì?

Lợi suất là thu nhập mà khoản đầu tư mang lại theo thời gian, thường được biểu thị bằng phần trăm, trong khi lợi tức là số tiền thu được hoặc mất đi từ một khoản đầu tư theo thời gian, thường được biểu thị bằng giá trị đồng đô la

Có năng suất chấm dứt một chức năng?

'câu lệnh năng suất' sẽ không kết thúc hàm trong khi gọi hàm . Trong nhiều cuộc gọi, nó sẽ tạo đầu ra liên tiếp.

Chủ Đề