0

所以...

这有效

def makeBold(fn):
    def wrapped():
        return '<b>'+fn()+'</b>'
    return wrapped
@makeBold
def sayhello():
    return 'Ey yo wassup'

并产生预期的Ey yo wassup

但是,这不起作用

def makeBold(fn):
    def wrapped():
        return '<b>'+fn()+'</b>'
    return wrapped

def makeItalic(fn):
    def wrapped():
        return '<i>'+fn()+'</i>'

@makeItalic
@makeBold
def sayhello():
    return 'Ey yo wassup'

这一切都会产生这个不错的 NoneType 错误......

我认为它会产生像Ey yo wassup这样的东西

想法?

4

1 回答 1

0
def makeBold(fn):
    def wrapped():
        return '<b>'+fn()+'</b>'
    return wrapped

def makeItalic(fn):
    def wrapped():
        return '<i>'+fn()+'</i>'
    return wrapped

@makeItalic
@makeBold
def sayhello():
    return 'Ey yo wassup'
于 2013-07-01T18:51:57.573 回答