什么场景下会有main函数?
当该python脚本被作为模块(module)引入(import)时,其中的main()函数将不会被执行。
main函数的作用?
          
              __name__ == '__main__'
          
          是Python的
          
            main函数
          
          入口。并非说,加入这句才能使用
          
            python xxx.py
          
          来执行,而是说,这里可以判断,当前是否是直接被python直接调用执行。
        
main为什么只有文件当作执行程序的时候才会被执行呢?
这是由于两方面原因,一方面,main函数是所有执行程序的入口;另一方面,python的解释器是顺序执行脚本的并且不会调用任何不属于程序本身的代码和函数,需要补充说明的一点是,如果是被作为一个模块或库import到程序中,则会直接成为代码的一部分。
参考代码:
文件:main_function.py
            
               1
            
            
              import
            
            
               datetime
            
            
               2
            
            
               3
            
            
              print
            
            (
            
              '
            
            
              Hello World!
            
            
              '
            
            
              )
            
            
               4
            
            
              print
            
            (
            
              '
            
            
              Time is 
            
            
              '
            
            , datetime.datetime.now().strftime(
            
              '
            
            
              %Y-%m-%d %H:%M:%S %A
            
            
              '
            
            
              ))
            
            
               5
            
            
               6
            
            
               7
            
            
              def
            
            
               main():
            
            
               8
            
            
              print
            
            (
            
              '
            
            
              this message is from main function
            
            
              '
            
            
              )
            
            
               9
            
            
              10
            
            
              11
            
            
              if
            
            
              __name__
            
             == 
            
              '
            
            
              __main__
            
            
              '
            
            
              :
            
            
              12
            
                 main()
          
        执行结果:
            
              ➜  main git:(master) ✗ py main_function.py
Hello World!
Time 
            
            
              is
            
              2019-07-22 09:50:50
            
               Monday
this message 
            
            
              is
            
            
              from
            
             main function
          
        文件二:test_main.py
            
              import
            
            
               main_function
            
            
              print
            
            (
            
              "
            
            
              Done!
            
            
              "
            
            )
          
        执行结果:
            
              ➜  main git:(master) ✗ py test_main.py
Hello World!
Time 
            
            
              is
            
              2019-07-22 09:52:00
            
               Monday
Done!
            
          
        


 
					 
					