这是我第一次尝试创建一个decorator来验证参数化函数中的值,我希望有更好的方法来实现这一点
当我开始学习装饰器时,我发现很难处理作为装饰目标的函数中的参数。我很确定有更好的方法可以做到这一点,我知道你会提供的
def noZeroFarParamOne(func):
def domore(*args,**kwargs):
for i in args[1:]:
if i == 0:
print('No valid to divide by zero.')
result = func(None)
return result
return func(*args,**kwargs)
return domore
@noZeroFarParamOne
def divide(*num):
print('amount of params are:',len(num))
if len(num) > 0:
div = num[0]
if len(num) == 1:
return div
else:
return None
for i in num[1:]:
div = div/i
return div
print(divide(8,4,2))
print(divide(2,0))
什么是Pythonic方式(有经验的Python开发人员)来完成我作为初学者所做的事情
目前没有回答
相关问题 更多 >
编程相关推荐