2017-04-23 64 views
1

好吧所以这里的代码变量和函数帮助// Python的

def user_password(): 
input('Please Enter Password: ') 

#profiles 
def intercept(): 
    user_password() 
    if user_password == "intercept": 
      print("this is working so far") 
    else: 
      print("Incorect Password") 
def Jimmy(): 
    user_password() 
    if user_password == "Jimmy": 
      print("this is working so far") 
    else: 
      print("Incorect Password") 
def Tommy(): 
    user_password() 
    if user_password == "Tommy": 
      print("this is working so far") 
    else: 
      print("Incorect Password") 

#login 
user_functions = dict(
    intercept=intercept, 
    Jimmy=Jimmy, 
    Tommy=Tommy, 
    # ... 
) 
user_input = input("Input function name: ") 

if user_input in user_functions: 
    user_functions[user_input]() 
else: 
    print("Error: Unknown function.") 

问题:

  • 我的代码总是询问密码启动,即使我不希望它 来。
    • 当我改变第一变量的函数它修复了这个
    • 时,我只需设置变量为什么会执行。我敢肯定,我不应该使用的功能,而不是一个变量
  • 不管它总是结束了,即使我给了正确的密码
+2

由于你的第一行代码是“USER_PASSWORD =输入(‘请输入密码:’)”那会是执行 – Archmede

+0

'='并不意味着第一线“在左边的速记上做右边的操作”。它的意思是“做正确的事情,让左边的东西成为通过做右边的事情产生的对象的名称”。 – user2357112

回答

3

我想你的密码不正确试图写这样的事情:

def get_user_password(): 
    return input('Please Enter Password: ') 


def Jimmy(): 
    user_password = get_user_password() 
    if user_password == "Jimmy": 
      print("this is working so far") 
+0

你介意解释这是如何工作的,为什么我的代码不工作?首先检查代码,因为我改变了一些东西 – intercept

+0

@intercept你的第一行是一个SyntaxError。请找到如何定义一个函数以及如何设置一个变量。 ''def user_password = input('请输入密码:')''对此没有帮助。 – mmuzahid

+0

哎呀我把它改成了错误的东西 – intercept