zoukankan      html  css  js  c++  java
  • if __name__=="__main__": 这个结尾的理解

    print "别人应用我做为模块导入,就只看到我"

    if __name__=="__main__":  

      print "自己文件执行就看到我输出"

    这个的意思是,当是自己文件里执行脚本的的话,就执行  print "别人应用我做为模块导入, 和 " if __name__=="__main__":  下面的代码

    假如是别人来调用我这个文件的话,他只能执行 print "别人应用我做为模块导入,就只看到我"  

    一句话,秒懂
    __name__ 是当前模块名(print __name__   出来是 __main__ ),当模块被直接运行时模块名为 __main__ 。

    这句话的意思就是,当模块被直接运行时,以下代码块将被运行,当模块是被导入时,代码块不被运行。

     例子:

    BB.py import AA 模块  只执行了foo()函数 没有执行" if __name__=="__main__":  下面的代码 print 123

    AA.py 自己执行脚本的话,就会去执行" if __name__=="__main__":  下面的代码 print 123 

    后记:

    每个文件的 __name__ 值是不一样的,if __name__="其他的name值" 也会执行下面的代码。

    查看文件的__name__值 可以在b文件里面import a文件,就可以看到 b文件的name值是多少了

    下面文件 b文件调用a文件,因为__name__=b 所以执行了a文件下的 "这个是a"

    a.py文件 自己执行时,是不会 执行下面的 "这个是a",因为自己的name 是__main__

    参考: https://blog.csdn.net/q2605894893/article/details/82345814

  • 相关阅读:
    HDU 1002 A + B Problem II
    HDU 2602 Bone Collector WA谁来帮忙找找错
    爬楼梯问题-最大迈两步
    2106 Problem F Shuffling Along 中石油-未提交-->已提交
    2101 Problem A Snake Filled
    2078 Problem H Secret Message 中石油-未提交-->已提交
    有关 时间 空间 以及 数据类型 的总结
    hdu 2510
    hdu 1133 卡特兰 高精度
    hdu 2067
  • 原文地址:https://www.cnblogs.com/kaibindirver/p/8887057.html
Copyright © 2011-2022 走看看