0
我是新来的蟒蛇,我现在正在学习修饰符。这是我工作的蟒蛇装饰例如:Python - 装饰错误
def makeHtmlTag(tag, *args, **kwds):
def real_decorator(fn):
css_class = " class='{0}'".format(kwds["css_class"]) \
if "css_class" in kwds else ""
def wrapped():
return "<"+tag+css_class+">" + fn() + "</"+tag+">"
return wrapped
return real_decorator
@makeHtmlTag(tag="i", css_class="italic_css")
def hello():
return "hello world"
print hello()
当我只有一条线替换功能wrapped()
如下:
return "<"+tag+css_class+">" + fn() + "</"+tag+">"
我得到TypeError
。这是为什么?
真正的装饰需要返回一个函数,而不是一个字符串。 –