2007年05月21日 星期一 17:09
def A(func): def new_func(*args, **argkw): result = func(*args, **argkw) #调用原函数继续进行处理 if result: #做一些额外的工作 return new_result else: return result return new_func @A def f(args):pass args argkw如何就是f的args?如何传进去的
2007年05月21日 星期一 18:33
----- Original Message ----- From: "Brightman" <mr.brightman at gmail.com> To: <python-chinese at lists.python.cn>; <python-cn at googlegroups.com> Sent: Monday, May 21, 2007 5:09 PM Subject: [python-chinese] 请教decorate的机制 > def A(func): > def new_func(*args, **argkw): > result = func(*args, **argkw) #调用原函数继续进行处理 > if result: > #做一些额外的工作 > return new_result > else: > return result > return new_func > @A > def f(args):pass > > args argkw如何就是f的args?如何传进去的 不是很理解你说的,我估计是写错了吧,应该也是*args, **argkw, @A def f(*args,**argkw): pass Python没有魔力可以把args变成*args, **argkw,它只能老老实实的按你的定义去传参数。 vcc _
2007年05月21日 星期一 19:42
vcc 写道: > ----- Original Message ----- > From: "Brightman" <mr.brightman在gmail.com> > To: <python-chinese在lists.python.cn>; <python-cn在googlegroups.com> > Sent: Monday, May 21, 2007 5:09 PM > Subject: [python-chinese] 请教decorate的机制 > > > >> def A(func): >> def new_func(*args, **argkw): >> result = func(*args, **argkw) #调用原函数继续进行处理 >> if result: >> #做一些额外的工作 >> return new_result >> else: >> return result >> return new_func >> @A >> def f(args):pass >> >> args argkw如何就是f的args?如何传进去的 >> 呵呵,表述的不清楚。问题:new_func如何得到def f(args)的参数,实际上new_func(*args,**argkw),args argkw就是f函数的参数,想知道它是如何实现的 def A(func): def new_func(*args,**argkw) print "calling %s with args %s, %s" % (func.__name__, args, argkw) return new_func @A def f1(user,age): pass > 不是很理解你说的,我估计是写错了吧,应该也是*args, **argkw, > @A > def f(*args,**argkw): pass > > Python没有魔力可以把args变成*args, **argkw,它只能老老实实的按你的定义去传参数。 > > vcc > _ > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- 下一部分 -------------- 一个HTML附件被移除... URL: http://python.cn/pipermail/python-chinese/attachments/20070521/0977c86b/attachment.html
2007年05月21日 星期一 23:14
http://wiki.woodpecker.org.cn/moin/ObpLovelyPython/LpyQLearn-4-func#decorator On 5/21/07, Brightman <mr.brightman at gmail.com> wrote: > > def A(func): > def new_func(*args, **argkw): > result = func(*args, **argkw) #调用原函数继续进行处理 > if result: > #做一些额外的工作 > return new_result > else: > return result > return new_func > @A > def f(args):pass > > args argkw如何就是f的args?如何传进去的 > _______________________________________________ > python-chinese > Post: send python-chinese at lists.python.cn > Subscribe: send subscribe to python-chinese-request at lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request at lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -- http://codeplayer.blogspot.com/ -------------- next part -------------- An HTML attachment was scrubbed... URL: http://python.cn/pipermail/python-chinese/attachments/20070521/adf0e1ef/attachment.html
Zeuux © 2025
京ICP备05028076号