python中__name__=='__main__'的作用

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/flyawayl/article/details/78165200

  学习python语法的过程中碰到了__name__=='__main__',这里做个笔记。

作用

  这段代码的作用就是让你写的脚本模块既可以导入到别的模块中用,另外该模块自己也可执行。

测试

先写一个test.py文件,代码如下

# test.py
def print_name():
    print('hello, %s' % __name__)

if __name__ == '__main__':
    print_name()

运行这段代码,得到结果hello, __main__,显然这里的name的值就是__main__。

那我们再写一个t.py,导入test.py的print_name方法

# t.py
from test import print_name

print_name()

运行这段代码,得到结果hello, test,并且test.py的print_name()方法并没有执行。两次运行得到了不同的__name__,这样就使得原test.py的方法不会运行,即__name__!=’__main__’

尝试

  试试把test.py中的if __name__ == '__main__':去掉,会是怎样的答案呢?

如有不当之处欢迎指出!

猜你喜欢

转载自blog.csdn.net/flyawayl/article/details/78165200