zoukankan      html  css  js  c++  java
  • if __name__ == '__main__' 如何正确理解?

    作者:知乎用户
    链接:https://www.zhihu.com/question/49136398/answer/114437881
    来源:知乎
    著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

    # file one.py
    def func():
        print("func() in one.py")
    
    print("top-level in one.py")
    
    if __name__ == "__main__":
        print("one.py is being run directly")
    else:
        print("one.py is being imported into another module")
    
    # file two.py
    import one
    
    print("top-level in two.py")
    one.func()
    
    if __name__ == "__main__":
        print("two.py is being run directly")
    else:
        print("two.py is being imported into another module")
    

    如果你执行one.py文件,

    python one.py
    

    会输出:

    top-level in one.py
    one.py is being run directly
    

    如果你执行two.py文件,

    python two.py
    

    会输出:

    top-level in one.py
    one.py is being imported into another module
    top-level in two.py
    func() in one.py
    two.py is being run directly
    

    Thus, when module one gets loaded, its __name__ equals "one" instead of __main__.

    我就不翻译了首先我翻译的很丑其次我觉得英文更好理解。。。

    它就是上面这么用的。

    然后我觉得它的功能就是,让if __name__ == '__main__'它后面的代码不执行。这样代码运行会更简洁更流畅???因为只需要用想用的那部分就行了。。。

  • 相关阅读:
    核新同花顺数据结构
    python发送各类邮件的主要方法
    Tesseract-OCR引擎 入门
    ruby函数回调的实现方法
    软件单元测试之我见
    cocos cteator中tiled模式 用图集容易出线
    入坑CCC遇到的一些坑啊
    关于委托的理解
    火狐浏览器的三个坑
    抗锯齿的BUG
  • 原文地址:https://www.cnblogs.com/lelexiong/p/8979877.html
Copyright © 2011-2022 走看看