Năng suất và lợi nhuận của Python trong cùng một chức năng

Python là ngôn ngữ lập trình đa năng được sử dụng rộng rãi trong thời gian gần đây. Sản lượng là một từ khóa Python tích hợp được sử dụng để tạo các hàm tạo. Chức năng của nó tạo ra một loạt các kết quả. Nó tạm dừng việc thực thi chương trình, gửi lại giá trị kết quả cho người gọi và tiếp tục thực hiện từ kết quả cuối cùng. Bên cạnh đó, hàm năng suất gửi chuỗi kết quả được tạo dưới dạng đối tượng trình tạo. Mặt khác, return cũng là một từ khóa có sẵn trong Python dùng để kết thúc hàm và gửi lại giá trị cho người gọi

Bài viết này phác thảo sự khác biệt giữa năng suất và lợi nhuận với các ví dụ

Sự khác biệt giữa Năng suất và Lợi nhuận

Để bắt đầu, có nhiều sự khác biệt nổi bật giữa năng suất và lợi nhuận. Trước tiên hãy thảo luận về những thứ này là gì

ReturnYieldCâu lệnh return chỉ trả về một giá trị duy nhất cho người gọi. Câu lệnh năng suất có thể trả về một loạt kết quả cho người gọi ở dạng đối tượng trình tạo. Trả về thoát khỏi chức năng và trong trường hợp có vòng lặp, nó sẽ loại bỏ vòng lặp. Đây là câu lệnh cuối cùng được đặt bên trong hàm. Nó không hủy bỏ các biến cục bộ của hàm. Nó tạm dừng thực thi và gửi lại giá trị cho người gọi và tiếp tục thực hiện chương trình từ câu lệnh lợi nhuận cuối cùng. Về mặt logic, một hàm chỉ nên có một câu lệnh return. Có thể có nhiều hơn một câu lệnh suất bên trong hàm. Câu lệnh return chỉ có thể chạy một lần. Câu lệnh suất có thể chạy nhiều lần. Câu lệnh return được đặt bên trong một hàm Python thông thường. Câu lệnh năng suất chuyển đổi một hàm thông thường thành một hàm tạo

Ví dụ 1. Trở lại so với. năng suất

Bây giờ, hãy xem sự khác biệt giữa câu lệnh return và yield thông qua các ví dụ. Trong chương trình ví dụ dưới đây, chúng ta đã sử dụng nhiều câu lệnh return. Bạn có thể quan sát thấy rằng việc thực thi chương trình sẽ kết thúc sau câu lệnh return đầu tiên và phần còn lại của mã sẽ không được thực thi

#a chương trình hiển thị hoạt động của câu lệnh trả về

#xác định biến số
num1 = . 10

#defining a number variable
num2=20        

#creating a function to perform arithmetic operations
def mathOP[]:

    #tính giá trị tổng
    return num1+num2

    #calculating the difference
    return num1-num2

    #calculating the multiplication value
    return num1*num2

    #calculating the division value
    return num1/num2

#calling the function
print[mathOP[]]

đầu ra

Ở đầu ra, có thể thấy rằng hàm chỉ trả về giá trị đầu tiên và chương trình kết thúc

Để thực hiện một tác vụ tương tự với nhiều câu lệnh trả về, chúng ta cần tạo bốn hàm khác nhau cho từng loại phép toán số học

#a chương trình hiển thị hoạt động của câu lệnh trả về

#xác định biến số
num1 = . 10

#defining a number variable
num2=20

#creating a function to perform arithmetic operations
def sumOP[]:

    #tính giá trị tổng
    return num1+num2

def subtractOP[]:

    #tính chênh lệch
    return .

def multiplicationOP[]:

    #tính giá trị phép nhân
    return num1*num2

def divisionOP[]:

    #tính giá trị chia
    return num1/num2

#calling the sum function
print["The sum value is: ", sumOP [] . "

#calling the subtraction function
print["The difference value is: ", trừOP [] . "

#calling the multiplication function
print["The multiplication value is: ", phép nhânOP [] . "

#calling the division function
print["The division value is: ", bộ phậnOP []]

đầu ra

Chúng ta có thể thực hiện nhiều phép toán số học này bên trong một hàm tạo duy nhất với nhiều câu lệnh năng suất

#a chương trình hiển thị hoạt động của câu lệnh năng suất

#xác định biến số
num1 =< . 10

#defining a number variable
num2=20        

#creating a function to perform arithmetic operations
def mathOP[]:

    #tính giá trị tổng
    hiệu suất num1+num2

    #calculating the difference
    yield num1-num2

    #calculating the multiplication value
    yield num1*num2

    #calculating the division value
    yield num1/num2

#calling the function
print["Printing the values:"]

#sử dụng vòng lặp for để truy cập các giá trị từ đối tượng trình tạo
for i in mathOP[]:
      in[ i ]

Chủ Đề