06 Python Debugging Decorators

5 minutes
Share the link to this page
Copied
  Completed
You need to have access to the item to view this lesson.
One-time Fee
$69.99
List Price:  $99.99
You save:  $30
€64.87
List Price:  €92.68
You save:  €27.80
£56.10
List Price:  £80.15
You save:  £24.04
CA$95.73
List Price:  CA$136.77
You save:  CA$41.03
A$105.62
List Price:  A$150.90
You save:  A$45.27
S$94.82
List Price:  S$135.47
You save:  S$40.64
HK$546.96
List Price:  HK$781.40
You save:  HK$234.44
CHF 63.69
List Price:  CHF 91
You save:  CHF 27.30
NOK kr765.17
List Price:  NOK kr1,093.15
You save:  NOK kr327.97
DKK kr484.68
List Price:  DKK kr692.43
You save:  DKK kr207.75
NZ$116.27
List Price:  NZ$166.11
You save:  NZ$49.83
د.إ257.07
List Price:  د.إ367.26
You save:  د.إ110.19
৳8,181.33
List Price:  ৳11,688.12
You save:  ৳3,506.78
₹5,847.43
List Price:  ₹8,353.82
You save:  ₹2,506.39
RM331.68
List Price:  RM473.85
You save:  RM142.17
₦104,194.90
List Price:  ₦148,856.25
You save:  ₦44,661.34
₨19,442.91
List Price:  ₨27,776.78
You save:  ₨8,333.86
฿2,558.45
List Price:  ฿3,655.09
You save:  ฿1,096.63
₺2,267.97
List Price:  ₺3,240.09
You save:  ₺972.12
B$360.92
List Price:  B$515.62
You save:  B$154.70
R1,298.69
List Price:  R1,855.35
You save:  R556.66
Лв127.05
List Price:  Лв181.51
You save:  Лв54.46
₩95,963.28
List Price:  ₩137,096.28
You save:  ₩41,133
₪260.58
List Price:  ₪372.28
You save:  ₪111.69
₱4,029.07
List Price:  ₱5,756.07
You save:  ₱1,726.99
¥10,902.69
List Price:  ¥15,575.94
You save:  ¥4,673.25
MX$1,174.46
List Price:  MX$1,677.87
You save:  MX$503.41
QR255.17
List Price:  QR364.55
You save:  QR109.37
P950.08
List Price:  P1,357.32
You save:  P407.23
KSh9,195.33
List Price:  KSh13,136.75
You save:  KSh3,941.42
E£3,312.04
List Price:  E£4,731.69
You save:  E£1,419.65
ብር4,015.16
List Price:  ብር5,736.19
You save:  ብር1,721.02
Kz58,375.85
List Price:  Kz83,397.65
You save:  Kz25,021.80
CLP$64,711.15
List Price:  CLP$92,448.46
You save:  CLP$27,737.31
CN¥505.79
List Price:  CN¥722.59
You save:  CN¥216.80
RD$4,068.93
List Price:  RD$5,813.01
You save:  RD$1,744.07
DA9,407.80
List Price:  DA13,440.29
You save:  DA4,032.49
FJ$158.92
List Price:  FJ$227.04
You save:  FJ$68.12
Q543.32
List Price:  Q776.21
You save:  Q232.88
GY$14,629.88
List Price:  GY$20,900.72
You save:  GY$6,270.84
ISK kr9,750.65
List Price:  ISK kr13,930.10
You save:  ISK kr4,179.44
DH700.98
List Price:  DH1,001.44
You save:  DH300.46
L1,241.18
List Price:  L1,773.19
You save:  L532.01
ден3,997.25
List Price:  ден5,710.60
You save:  ден1,713.35
MOP$562.78
List Price:  MOP$804.01
You save:  MOP$241.22
N$1,286.15
List Price:  N$1,837.44
You save:  N$551.28
C$2,574.22
List Price:  C$3,677.62
You save:  C$1,103.39
रु9,342.46
List Price:  रु13,346.95
You save:  रु4,004.48
S/258.07
List Price:  S/368.69
You save:  S/110.62
K271.37
List Price:  K387.68
You save:  K116.31
SAR262.49
List Price:  SAR375.01
You save:  SAR112.51
ZK1,914.19
List Price:  ZK2,734.67
You save:  ZK820.48
L323.44
List Price:  L462.08
You save:  L138.63
Kč1,618.95
List Price:  Kč2,312.89
You save:  Kč693.93
Ft25,197.33
List Price:  Ft35,997.73
You save:  Ft10,800.40
SEK kr760.36
List Price:  SEK kr1,086.27
You save:  SEK kr325.91
ARS$61,709.50
List Price:  ARS$88,160.22
You save:  ARS$26,450.71
Bs483.18
List Price:  Bs690.29
You save:  Bs207.10
COP$272,025.83
List Price:  COP$388,624.98
You save:  COP$116,599.15
₡35,836.73
List Price:  ₡51,197.52
You save:  ₡15,360.79
L1,728.26
List Price:  L2,469.04
You save:  L740.78
₲524,126.44
List Price:  ₲748,784.15
You save:  ₲224,657.71
$U2,694.96
List Price:  $U3,850.11
You save:  $U1,155.14
zł279.64
List Price:  zł399.51
You save:  zł119.86
Already have an account? Log In

Transcript

Hey there. Hello everyone. This is your facilitator commander for this course decorators in Python. Earlier we discussed Python decorators, Introduction syntax, why it is important and how the buyten decorators work chaining decorators. And in this video, we'll be discussing debugging decorators. So let's move on.

This is just a simple decorator that they just created. It has an inner function that takes an argument and key value arguments, prints hash 50 times, and then take the decorated function into it and then prints hash 50 times returns the inner function, another function that I just another decorated function that I just created. It also has the inner function within it, print stash 50 times takes the decorated function within it. And then again, print stash. Two times. Now I just decorated the show greeting function with hash a and dash.

It was discussed earlier in the last video as well, but I'm just repeating that in order to get give you an idea of how debugging can work within with the decorators. Okay, let's execute the last decorator functions that we created. Okay, now it's executed. Now this decorator of this function that we created, it is executed. And now I'm going to use the attribute method of name with the show function that I just created. And I get inner.

Now you see within the show function, there is no enter, but it is giving me the name as inner. So, what it is actually doing and this is the kind of disadvantage of using decorator function that when we define the decorator function, actually refers to the decorator not the actual origin of the function, it should have shown me show that is the name of the function, but it is actually referring it to the decorator function that is being used. And therefore, it becomes very difficult to debug those because we don't know the origin of the function. And in that case, the become like debugging becomes very difficult. But how to solve this problem, we can solve this problem using import importing function tools library, what it does, then, why creating the decorator function, we can add the function tools dot reps, and then the function that we need to be decorated and pass it as as the parameter just like the normal decorator functions.

So what it will do, like here, we have passed a function the same way And we're going to do here. Now, after that, when we're going to debug it Are we are going to use the attribute name of the function, it is going to show us the original function instead of the decorator function. So we know actually, where the function is originating from and which are the decorators that are being applied to that. Let's execute this. Let's see, again, the same thing. I just executed this function and it is giving me error named func tool is not defined, okay, I did not import that library and that's why it is giving me this error.

So I just need to import it. Let me just execute it. Okay, now it's imported. 90 executed and see, when we run this code, it is going to show the actual name of the function that is show. Okay, this is how the decorator debugging function works. I hope now you have a better understanding of debugging and why debugging become more important that with decorators.

So may you have any queries feel free to contact me or if you have any suggestions or feedback to let me know you can get in touch with me on Twitter, YouTube, and my courses on Udemy. I also write blogs and medium so you can get in, you can get in touch with me over there as well. And it was really nice talking to you. And looking forward to see you again in the next video that will summarize the whole the whole topic of decorators. Thank you

Sign Up

Share

Share with friends, get 20% off
Invite your friends to LearnDesk learning marketplace. For each purchase they make, you get 20% off (upto $10) on your next purchase.