python 装饰器报错原因及解决方法

错误:

line 16
return wrapper()
^
IndentationError: unindent does not match any outer indentation level

原因:返回装饰器时方法后面不应该加括号

user,passwd='alex',"abc"
def auth(func):
    def wrapper(*args,**kwargs):
        username= input("Username:").strip()
        password=input("Password").strip()
        if user==username and passwd==password:
            print("登录成功!")
            func(*args,**kwargs)
        else:
            exit("输入信息有误")
     return wrapper


def index():
    print("welcome!")

@auth
def home():
    pass
@suth
def bbs():
    pass
index()
home()
bbs()

你可能感兴趣的:(python,错误)