__name__可以返回一个类或者一个函数的名字。

def test():
    pass

class Human:
    pass

print(test.__name__)
print(Human.__name__)
test
Human

 我们在程序编写时候,经常用到的__name__ == __main__

那时因为__name__直接可以在模块中或者你写的代码中直接运行。

任何一个python的shell里面直接执行__name__必定返回"__main__",因为在主函数中,运行该模块的名称就是__main__。

但如果作为被其它模块调用时,它在执行__name__的时候就时它的文件名了。

这里我做一个比较不同的试验。

print(__name__)


if __name__ == 'a1':   # 由于 __name__不等于a1所以后面的不执行
    print(1111)
__main__

但当我:

import a1

 输出

a1
1111

 因为a1被当做模块导入时,它的名字已经变成a1,后面的print就可以正常执行输出。

相关文章:

  • 2021-08-21
  • 2022-02-23
  • 2021-09-04
  • 2022-12-23
  • 2022-12-23
  • 2022-02-18
  • 2021-07-22
  • 2021-07-03
猜你喜欢
  • 2021-06-15
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-07-07
  • 2021-10-18
  • 2021-11-23
相关资源
相似解决方案