zoukankan      html  css  js  c++  java
  • python中if __name__ == '__main__':的作用

    一个python文件有两种使用方法:

    • 作为脚本直接运行
    • import到其它文件中被调用(模块重用)

    if __name__ == '__main__':就是用来控制这两种情况下代码执行的过程。在if __name__ == '__main__':下的代码只有在第一种情况下(即文件作为脚本直接执行)才会被执行,而import到其他文件中是不会被执行的。

    每个python文件都包含内置的变量__name__,如果直接被执行,则__name__='__main__',如果被当作模块调用,则__name__=模块名。

    看看下面的示例就清晰了:

    创建test.py文件,内容如下

    # vim test.py
    
    print("I'm the first.")
    print(__name__)
    
    if __name__=="__main__":
        print("I'm the second.")
    

    直接运行文件,这里能看到打印结果__name__='__main__',所以执行了后面的print。

    # python3 test.py
    
    I'm the first.
    __main__
    I'm the second.
    

    创建import_test.py,仅调用test模块

    # vim import_test.py
    
    import test
    

    运行import_test.py文件,这里test.py文件被调用时__name__=模块名即test,所以if __name__=="__main__"为假,后面的print没有执行。

    # python3 import_test.py
    
    I'm the first.
    test
    

    参考:
    https://docs.python.org/3/library/main.html

  • 相关阅读:
    CSS选择器的优先级
    SQL Server——死锁查看
    VS2008激活找不到密匙输入框
    迷茫的周一
    SQL Server 2012使用日常
    Excel默认去除开头的0
    PDA日常问题
    第一个.NET小程序
    网站发布
    IIS配置——常见问题
  • 原文地址:https://www.cnblogs.com/keithtt/p/7552984.html
Copyright © 2011-2022 走看看