• Python 中的 if __name__ == '__main__'


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

    先来个小栗子:

    先创建一个f1的py文件

    li ='我想和你好好的'
    def func1(): print('li',li) func1()
    执行结果:li
    我想和你好好的
    
    

    再创建一个s1的py文件

    from f1 import li
    def func2(name):
    
        return str(li) + name
    
    def func3():
        print('只要这个',func2('  最后的好梦渐渐消失')) 
    func3()
    执行结果
    li 我想和你好好的
    我只要这个 我想和你好好的  最后的好梦渐渐消失

    可以看到,f1中的func1函数也被执行了,那如何不让执行呢?

    这时,if __name__ == '__main__' 就派上了用场

    将f1代码修改一下

    li ='我想和你好好的'
    def func1(): 
      print('li',li)

    if __name__ == '__main__':
      func1()

    再重新执行s1文件

    我只要这个 我想和你好好的  最后的好梦渐渐消失

    所以,if __name__ == '__main__' 我们简单的理解就是: 如果模块是被直接运行的,则代码块被运行,如果模块是被导入的,则代码块不被运行

  • 相关阅读:
    NSString
    xib和storyboard的使用方法
    drawRect画线和使用CGContext
    CGAffineTransform动画
    【概念】静态成员
    【c#】Application.Exit和Close有什么不同
    【c#】const和readonly关键字
    【概念】设计模式
    【概念】常见数据结构与算法
    【概念】索引器
  • 原文地址:https://www.cnblogs.com/jassin-du/p/9104225.html
Copyright © 2020-2023  润新知