1.__name__是啥

  __name__ 是Python的模块名字。

  手册解释:The name of the module.

2.__name__的值

  首先,一个变量一次只有一个值。

  其次,__name__的值python自动给。

  比如,你的文件叫 hello.py,它在引入之后,__name__就是hello.

3.__main__是啥

  是当前直接执行的模块的名字。python给的。

  也就是说,当你的模块正在执行时,它的名字(__name__)就是 __main__。

  那上面那个执行时还叫不叫hello呢,答案是不叫。他自己执行时叫自己 __main__,别人才叫他hello。

4.if __name__ == '__main__' 是啥

  很明显,是一个判断。

5.有什么用

  这个下面的代码是模块直接执行时才去运行。

  有一些代码必须在模块直接执行时运行。可能你现在还没遇到。

  你现在运行的代码,执行可能是单模块,所以对于你来说,判断和不判断都可以执行。

6.看例子

  我有一个hello.py,内容如下:

# coding: utf-8
# 当前模块是 hello.py
# 首先,你要有一个模块叫world.py,随便写啥都行

# 导入模块
import world
# 打印导入的模块的名字(__name__) print(world.__name__) # 在当前文件打印__name__,这是当前模块的属性 print(__name__) # 看看当前模块的名字是不是__main__ if __name__ == '__main__': print("It's main") # 看看当前模块的名字是不是hello if __name__ == 'hello': print("It's hello")

  现在,为了便于理解,在world.py写了以下代码:

# coding: utf-8

if __name__ == '__main__':
    print("It's main")

if __name__ == 'world':
    print("It's world")

  我们执行hello.py,输出如下

    It's world
    world
    __main__
    It's main

  嗯,剩下的自己理解。

相关文章:

  • 2021-08-22
  • 2022-12-23
  • 2021-07-11
  • 2021-05-22
  • 2021-06-24
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-09-14
  • 2022-12-23
  • 2022-12-23
  • 2021-06-23
  • 2021-12-22
  • 2022-01-17
  • 2021-11-18
相关资源
相似解决方案