Python重定向

2024-04-26 12:03:40 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我想做一个密码检查器和生成器。所以首先我需要做一个菜单来告诉用户是否要检查或生成密码。但我有一点问题,重定向用户到他们的选择

我试过用这个'if main=name',但都没用。我也试着把def放在所有其他文本的前面。但不起作用,因为它将首先显示def,而不是显示菜单

import sys, os

def mainmenu():
        print()
print("________________________________________________________")
print("Hello and welcome to the password checker and generator.")
print("________________________________________________________")
input()
print("Mainmenu")
input()
print("Press 1 to Check a password.")
print("Press 2 to Generate a password.")
print("Press 3 to quit.")
UserOp = int(input("What is your choice?:"))  

if UserOp == 1:
    checkpass()

elif UserOp == 2:
    generatepass()

elif UserOp == 3:
     sys.exit(0)

else:
    print("This option is seen to be invalid.")
    mainmenu()

def checkpass():
    print()
print("You have chosen to check a password.")

def generatepass():
    print()

print("You have chosen to generate a password.")

所以我尝试重新安排或添加代码,使程序首先显示菜单,然后将用户重定向到指定的选项


Tags: andto用户密码inputifdefsys
2条回答

检查你的缩进,你的代码片段不在它们应该在的地方

import sys, os

def mainmenu():
    print()
    print("________________________________________________________")
    print("Hello and welcome to the password checker and generator.")
    print("________________________________________________________")
    input()
    print("Mainmenu")
    input()
    print("Press 1 to Check a password.")
    print("Press 2 to Generate a password.")    
    print("Press 3 to quit.")
    UserOp = int(input("What is your choice?:"))

    if UserOp == 1:
        checkpass()

    elif UserOp == 2:
        generatepass()

    elif UserOp == 3:
        sys.exit(0)

    else:
        print("This option is seen to be invalid.")
        mainmenu()


def checkpass():
    print()
    print("You have chosen to check a password.")


def generatepass():
    print()
    print("You have chosen to generate a password.")


if __name__ == '__main__':
    mainmenu()

除非你在stackoverflow上输入了错误的内容,否则你的初始打印选项似乎都不在主菜单功能中 看起来,这些选项也在函数之外,并与其他函数混合在一起

相关问题 更多 >