Python Main 函数和方法示例:理解 def Main()
什么是 Python 主函数?
Python 主函数 是任何程序的起点。当程序运行时,python 解释器按顺序运行代码。 Main 函数仅在作为 Python 程序运行时才会执行。如果作为模块导入,则不会运行 main 函数。
Python 中的 def main() 函数是什么?要理解这一点,请考虑以下示例代码
def main() 示例 1
def main(): print ("Hello World!") print ("Guru99")
在这里,我们得到了两份打印文件——一份在主函数中定义,即“Hello World!”另一个是独立的,就是“Guru99”。当你运行函数def main()时:
- 仅打印出“Guru99”
- 而不是代码“Hello World!”
这是因为我们没有声明调用函数“if__name__==”__main__”。
重要的是,在定义了 main 函数之后,你通过 if__name__==“__main__” 调用代码,然后运行代码,你才会得到输出“hello world!”在编程控制台中。考虑以下代码
def main() 示例 2
def main(): print("Hello World!") if __name__ == "__main__": main() print("Guru99")
本例打印Guru99。
这是解释,
- 当 Python 解释器读取一个源文件时,它将执行在其中找到的所有代码。
- 当 Python 将“源文件”作为主程序运行时,它会将特殊变量 (__name__) 设置为具有值 (“__main__”)。
- 当你在 python 中执行 main 函数时,它会读取“if”语句并检查 __name__ 是否等于 __main__。
- 在 Python 中 “if__name__==“__main__” 允许您将 Python 文件作为可重用模块或独立程序运行。
__name__ 变量和 Python 模块
要了解 __name__ 变量在 Python main 函数方法中的重要性,请考虑以下代码:
def main(): print("hello world!") if __name__ == "__main__": main() print("Guru99") print("Value in built variable name is: ",__name__)
现在考虑,代码作为模块导入
import MainFunction print("done")
这里是代码说明:
与 C 一样,Python 使用 ==进行比较,而 =进行赋值。 Python解释器使用main函数有两种方式
直接运行:
- __name__=__main__
- if 语句 ==True,_main_ 中的脚本将被执行
作为模块导入
- __name__=模块的文件名
- if语句==false,__main__中的脚本不会被执行
当代码执行时,它会检查带有“if”的模块名称。这种机制保证了 main 函数只作为直接运行而不是作为模块导入时执行。
以上示例为 Python 3 代码,如果您想使用 Python 2,请考虑以下代码
def main(): print "Hello World!" if __name__== "__main__": main() print "Guru99"
在 Python 3 中,您不需要使用 if__name。以下代码也有效
def main(): print("Hello World!") main() print("Guru99")
注意: 确保在定义 main 函数后,留下一些缩进,不要在 def main():函数下面声明代码,否则会出现缩进错误。
Python