Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何创建菜单选项的多选项_Python - Fatal编程技术网

Python 如何创建菜单选项的多选项

Python 如何创建菜单选项的多选项,python,Python,我是python新手,所以我尝试创建一个登录应用程序。在此应用程序中,主菜单包括1)创建acc(如果没有)。2) 登录,使用先前创建的acc登录(1)。代码如下: def main(): menu() def menu(): menuOption = print("Choose your option" "1) Create Acc" "2) Log

我是python新手,所以我尝试创建一个登录应用程序。在此应用程序中,主菜单包括1)创建acc(如果没有)。2) 登录,使用先前创建的acc登录(1)。代码如下:

def main():
    menu()

def menu():
    menuOption = print("Choose your option"
                    "1) Create Acc"
                    "2) Login")
    
    if menuOption == 1:
        createAcc()
    else:
        login()  
    
def createAcc():
    input1 = input("Choose username : ")
    input2 = input("Choose password : ")
    return input1, input2

def login(input1 , input2):
    print("Enter login details")
    
    input3 = input("Enter username : ")
    input4 = input("Enter password : ")

    if input3 == input1 and input4 == input2:
        print("Access granted")
    else:
        print("Access denied")

    input1, input2 = createAcc()
    login(input1, input2)

def information():
    print("Enter your details")

    name = input("Name : ")
    age = input("Age : ")
    pNum = input("Phone Number : ")
    address = input("Address : ")
    hpnum = input("Home telephone number : ")

def family():
    print("Enter your family details ")

    father = input("Father name : ")
    mother = input("Mother name : ")

    siblingCNT = input("How many siblings do you have?")
    for i in range(siblingCNT):
        sibName = input("Enter name : ")

main()
问题是我在第12行的Login()def处出错。这就是错误:

TypeError: login() missing 2 required positional arguments: 'input1' and 'input2'
如何解决这个问题,以及我能做些什么来改进我的应用程序?提前感谢您的建议


顺便说一句,我正在使用最新版本的vscode和python 3.8.5 64位。

存储在input1和input2中的值仅存在于createAcc()函数中


我建议您将这些定义为,并将login(input1,input2)更改为just login()

您正在调用的是
login()
,但您将login定义为有两个参数:
def login(input1,input2):
,那么函数参数在哪里?这是否回答了您的问题?用户需要在input1和input2中输入自己的用户名和密码。即使您登录正确,也会要求您创建一个新帐户如果我这样做了,用户每次运行代码时都需要在input1和input2中输入?但我只想让用户在选择createAcc时只需输入?或者你可以帮我一个忙,根据你的建议提供一个代码示例,然后我会更清楚。如果这只是为了学习,我想你可以将input1和input2存储在txt文件中,然后检索它们/与input3和input4进行比较。