Question: Let's create a Python decorator function named performance. This decorator is designed to measure the execution time of other functions. Here's how it should work:

Let's create a Python decorator function named performance. This decorator is designed to measure the execution time of other functions. Here's how it should work:
Input: The performance decorator accepts a single function as its argument.
Wrapped Function: The performance decorator should return a modified ("wrapped") version of the input function that:
Records the start time before running the wrapped functionExecutes the wrapped function and stores its resturn valueRecords the end time after running the wrapped functionCalculates the elapsed time (end time - start time)
Return Value: The wrapped function should return a tuple with:
The elapsed time (in seconds) taken to execute the wrapped functionThe wrapped function's return value
The time module has a function named perf_counter for measuring how long it takes to run something. For example:
import time start_time = time.perf_counter() # "Start" timer time.sleep(1) # Wait one second end_time = time.perf_counter() # "Stop" timer elapsed_time = end_time - start_time # should be *slightly* more than 1 print(elapsed_time) # 1.0045422080000037(approximately)

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Programming Questions!