由于Python中没有main()函数,所以当向解释器提供运行python程序的命令时,将执行0级缩进的代码。但是,在执行此操作之前,它将定义一些特殊变量;__name__就是这样的一个特殊变量。下面本篇就来带大家了解一下特殊变量__name__,希望对大家有所帮助。
__name__是一个内置变量,其计算结果为当前模块的名称。如果源文件作为主程序执行,则解释器将__name__变量设置为具有“__main__”的值;如果此文件是从另一个模块导入的,则__name__将设置为模块的名称。
因此,它可用于检查当前脚本是单独运行还是通过将其与if语句组合在其他位置导入。
下面我们通过示例来了解一下:
有两个单独的文件File1和File2。
File1.py
print "File1 __name__ = %s" %__name__ if __name__ == "__main__": print "File1正在直接运行" else: print "File1正在导入"
File2.py
import File1 print "File2 __name__ = %s" %__name__ if __name__ == "__main__": print "File2正在直接运行" else: print "File2正在导入"
现在,解释器被赋予运行File1.py的命令。
python File1.py
则,输出:
File1 __name__ = __main__ File1正在直接运行
然后运行File2.py.
python File2.py
输出:
File1 __name__ = File1 正在导入File1 File2 __name__ = __main__ File2正在直接运行
如上所示,当直接运行File1.py时,解释器将__name__变量设置为__main__,当通过导入运行file2.py时,__name__变量被设置为python脚本的名称,即File1。因此,可以说__name__ ==“__ main__”是使用python File1.py之类的命令从命令行运行脚本时运行的程序的一部分。
相关视频教程推荐:《Python教程》
以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!
以上是Python中的特殊变量__name__有什么用?的详细内容。更多信息请关注PHP中文网其他相关文章!