Python主函数
Python main 函数仅在作为 Python 程序执行时才会执行。如您所知,我们也可以将import一个python程序作为模块,在这种情况下python main方法不应该执行。 Python主函数 主函数是任何程序的入口点。但是python解释器顺序执行源文件代码,如果它不是代码的一部分,则不会调用任何方法。但如果它直接是代码的一部分,那么它将在文件作为模块导入时执行。这就是为什么在py
Python main 函数仅在作为 Python 程序执行时才会执行。如您所知,我们也可以将import一个python程序作为模块,在这种情况下python main方法不应该执行。
Python主函数
主函数是任何程序的入口点。但是python解释器顺序执行源文件代码,如果它不是代码的一部分,则不会调用任何方法。但如果它直接是代码的一部分,那么它将在文件作为模块导入时执行。这就是为什么在python程序中有一种特殊的技术来定义main方法,这样只有在程序直接运行时才会执行,而作为模块导入时不会执行。让我们看看如何在一个简单的程序中定义 python 主函数。python_main_function.py
print("Hello")
print("__name__ value: ", __name__)
def main():
print("python main function")
if __name__ == '__main__':
main()
-
当一个python程序被执行时,python解释器开始执行它里面的代码。它还设置了一些隐式变量值,其中之一是
__name__
,其值设置为__main__
。 -
对于python主函数,我们要定义一个函数然后使用
if __name__ == '__main__'
条件来执行这个函数。 -
如果将python源文件导入为模块,python解释器将
__name__
的值设置为模块名称,所以if条件返回false,main方法不会被执行。 -
Python 为我们提供了为 main 方法保留任何名称的灵活性,但是最好将其命名为 main() 方法。下面的代码非常好,但不推荐。
定义 main1():
print("python 主函数")
如果 __name__ u003du003d '__main__':
主要1()
下图显示了python_main_function.py
作为源文件执行时的输出。
Python main函数作为模块
现在让我们使用上面的python源文件作为一个模块并导入另一个程序。python_import.py
import python_main_function
print("Done")
现在,当执行上述程序时,会产生以下输出。
Hello
__name__ value: python_main_function
Done
请注意,前两行是从python_main_function.py
源文件中打印出来的。注意__name__
的值不同,因此不执行 main 方法。请注意,python 程序语句是逐行执行的,因此在执行 main 方法的 if 条件之前首先定义 main() 方法很重要。否则你会得到NameError: name 'main' is not defined
的错误。这就是python主函数的全部内容。参考:Python Docs
更多推荐
所有评论(0)