码迷,mamicode.com
首页 > 其他好文 > 详细

关于__name__=='__main__'的理解

时间:2017-10-16 19:31:37      阅读:107      评论:0      收藏:0      [点我收藏+]

标签:div   就会   add   程序   blog   def   span   rom   main   

一、总的来说,如果__name__==‘__main__‘成立,表示当前模块就是主程序,
如果__name__==‘__main__‘不成立,表示当前模块是被导入到某个模块中的,而此时__name__的值是被导入的这个模块的模块名
举例说明:
PP.py
#coding=utf-8
class F1():
    print 0000
    def add(self):
        print F1的add方法
    def jian(self):
        print F1的jian方法
if  __name__==PP:
    print PP被导入了
if __name__==__main__:
   print 我是主程序,被执行

运行PP结果为:    此时PP是主程序,所以__name__的值是__main__,执行结果就如下:

0000
我是主程序,被执行

pp2.py模块

#coding=utf-8
from PP import *    #一旦被导入,就开始执行
class cat():
    def eat(self):
        pass
print __name__

pp2的运行结果:  运行结果的前俩句是PP被导入后就会立马执行,PP的执行结果。__main__这个结果是pp2的__name__值

0000
PP被导入了
__main__

所以,模块A是主程序时,A模块的__name__值是__main__,模块A被导入到别的模块B的话,在B里执行A时,A的__name__值是A的模块名称

关于__name__=='__main__'的理解

标签:div   就会   add   程序   blog   def   span   rom   main   

原文地址:http://www.cnblogs.com/sunny0/p/7677813.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!