如何在 Python 中查找当前模块名称?
pythonprogrammingserver side programming
模块可以通过查看预定义的全局变量 __name__ 来查找自己的模块名称。如果该变量的值为"__main__",则程序正在作为脚本运行。
示例
def main(): print('Testing…...') ... if __name__ == '__main__': main()
输出
Testing…...
通常通过导入使用的模块也提供命令行界面或自检,并且仅在检查__name__后才执行此代码。
__name__是python语言中内置的变量,我们可以编写一个程序来查看这个变量的值。这是一个例子。我们还将检查类型-
示例
print(__name__) print(type(__name__))
输出
__main__ <type 'str'>
示例
让我们看另一个例子 -
我们有一个文件 Demo.py。
def myFunc(): print('Value of __name__ = ' + __name__) if __name__ == '__main__': myFunc()
输出
Value of __name__ = __main__
示例
现在,我们将创建一个新文件 Demo2.py。在此文件中,我们导入了 Demo 并从 Demo.py 中调用了该函数。
import Demo as dm print('Running the imported script') dm.myFunc() print('\n') print('Running the current script') print('Value of __name__ = ' + __name__)
输出
Running the imported script Value of __name__ = Demo Running the current script Value of __name__ = __main__