# intercept a wrong data type with a function decorator
def require_numeric (func):
"""decorator to check if function argument is of type int or float"""
def wrapper (arg1, arg2=0):
if type(arg1) == int or type(arg1) == float:
return func(arg1)
else:
print("need a numeric value!")
return wrapper
@require_numeric
def print_num(arg):
print("numeric value = %f" % arg)
# test ...
print_num(7.33) # numeric value = 7.330000
print_num("$3.99") # need a numeric value!
HiHe
174
Junior Poster
TrustyTony
commented:
Kind of fun func!
+12
TrustyTony
888
pyMod
Team Colleague
Featured Poster
HiHe
174
Junior Poster
HiHe
174
Junior Poster
HiHe
174
Junior Poster
ZZucker
342
Practically a Master Poster
ZZucker
342
Practically a Master Poster
ZZucker
342
Practically a Master Poster
ZZucker
342
Practically a Master Poster
ZZucker
342
Practically a Master Poster
ZZucker
342
Practically a Master Poster
ZZucker
342
Practically a Master Poster
vegaseat
1,735
DaniWeb's Hypocrite
Team Colleague
sneekula
969
Nearly a Posting Maven
vegaseat
commented:
nice
+14
HiHe
174
Junior Poster
HiHe
174
Junior Poster
vegaseat
1,735
DaniWeb's Hypocrite
Team Colleague
Lardmeister
461
Posting Virtuoso
Lardmeister
461
Posting Virtuoso
vegaseat
commented:
thanks
+0
Lardmeister
461
Posting Virtuoso
vegaseat
commented:
clever
+14
TrustyTony
888
pyMod
Team Colleague
Featured Poster
Lardmeister
461
Posting Virtuoso
griswolf
304
Veteran Poster
Ene Uran
638
Posting Virtuoso
vegaseat
1,735
DaniWeb's Hypocrite
Team Colleague
TrustyTony
888
pyMod
Team Colleague
Featured Poster
vegaseat
1,735
DaniWeb's Hypocrite
Team Colleague
richieking
44
Master Poster
vegaseat
1,735
DaniWeb's Hypocrite
Team Colleague
TrustyTony
888
pyMod
Team Colleague
Featured Poster
Be a part of the DaniWeb community
We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.