如何定义一个功能?

时间:2019-01-23 22:06:01

标签: python-3.x function

当我运行脚本时,它说未定义函数(主要), 但是如果我将“ main”功能放在顶部,它将直接运行而无需验证

我尝试了不同的名称和职位,

def validation():
    pin=int(input("please enter the pin \n::"))
    if pin == 56910:
        main()
    else:
        print("please enter a valid pin or leave")
validation();


def main():
    option=int(input("Hello welcome to my password managing program,    
    \n please select from one of the following options below \n 1-Checking existing e-mail and password, \n 2-Creating new password for a website")) 

    if option == "1":
        print("hello")
    if option =="2":
        print("option 2")
main();

“请输入图钉 :: 56910 追溯(最近一次通话):   文件“ /Users/MartinSomogyi/Documents/password_management.py”,第8行,在     validate();   验证中的文件“ /Users/MartinSomogyi/Documents/password_management.py”,第5行     主要() NameError:名称“ main”未定义”

  
    
      

    
  

1 个答案:

答案 0 :(得分:1)

您当前的脚本:

  1. 定义validation()
  2. 致电validate()
  3. 定义main()
  4. 调用main()

但是步骤2中的validation()调用直到步骤3才定义的main(),因此出错。因此,在python中,所有位于顶层的脚本(即不是函数或类定义,导入或简单赋值的所有脚本)都应放在文件的 end 处,最好放在{ {1}}块,如下所示:

if __name__ == '__main__':