【问题标题】:How do i return a boolean value from a function? [closed]如何从函数返回布尔值? [关闭]
【发布时间】:2020-11-22 07:05:06
【问题描述】:

在下面的代码中,我试图创建一个登录页面,但我在这里遇到了问题。问题是,print(bool(verfied)) 显示错误并说unresolved reference 'verified'。我希望该函数在通过按钮调用后返回一个布尔值。请帮助!!

def verification():
        verified = False
        if str(username_login.get()) == '1' and str(password_login.get()) == '1':
            verified = True
        elif str(username_login.get()) != '1' and str(password_login.get()) != '1':
            verified = False
        return verified
    login_button = Button(screen, text='Login', command=verification)
    login_button.place(relx=0.5,
                       rely=0.45,
                       anchor='center')
print(bool(verified))

【问题讨论】:

  • 这个功能好像没问题。也许你必须调用函数'print(bool(verification())?'
  • 能否请edit 解决代码缩进问题。另外 - 不是你问题的答案,但是 - 你的 elif 是不必要的,因为此时 verified 已经设置为 False。
  • 我看不出这与tkinter有什么关系
  • 如果您尝试访问变量,那么我认为您需要global 声明,否则您需要调用函数而不是变量名
  • 你的缩进是一团糟。而且您没有调用该函数。

标签: python python-3.x function tkinter


【解决方案1】:

你也可以像这样返回一个布尔值:

def verify_login(username_login, password_login):
    if str(username_login.get()) == str(password_login.get()):
        return True
    else:
        return False

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-03-11
    • 2021-02-16
    • 2017-06-07
    • 2011-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-04
    相关资源
    最近更新 更多