• 浅谈if __name__='__main__'


     if __name__ == '__main__'(四个下划线,每个下划线都是由两个下划线组成)

     首先由几行代码来说明:

     新建一个pi.py的代码

    PI=3.14
    def main():
    	print("PI:",PI)
    main()

        另外新建一个area.py

    from pi import PI  #从pi模块中引入PI函数
    
    def calc_round_area(radius):
    	return PI*(radius ** 2)
    
    def main():
    print("round area:",calc_round_area(2))
    main()                                                                                                                                          
    

      运行结果如下

    发现一个问题执行area.py程序时,同时也执行了pi.py中的main()函数,这显然不是我们想要的结果,如果添加if __name__ ==' __main__'代码,执行结果如下:

    PI=3.14
    def main():
    	print("PI:",PI)
    
    if __name__ == "__main__":
    	main()
    

    执行area.py,只执行area.py中的main()函数,这才是我们想要的结果。

    if __name__ == '__main__'其实代表Python程序的模拟入口,由于不同模块之间相互引用,不同模块可能都有这样的定义,但是程序入口只有一个。到底哪个程序入口被选中,取决于__name__的取值。其实这句代码作用就是模块直接运行时,代码块执行,模块被导入时,代码块不执行。

    这行代码实质是:编写私有化部分,这行代以上内容可以被其他调用,这行代码以下部分只有自己看见,当被调用时别人无法看见更不能调用执行。

    引用资料:https://blog.konghy.cn/2017/04/24/python-entry-program/

  • 相关阅读:
    sql对日期操作
    computeroperationcommand
    Convert函数对日期的应用
    编写快速、高效的JavaScript代码
    vim常用操作技巧与配置
    PureFTPd安装配置
    关于PHP代码加密和文本加密
    父页面调用iframe里的js函数相关例程,Iframe之间通讯研究
    常用JavaScript语法100讲
    计算机端口
  • 原文地址:https://www.cnblogs.com/mernva/p/13798769.html
Copyright © 2020-2023  润新知