python--main--入口函数

python的main()

在 Python 中,main 函数并不是像 C 或 C++ 那样强制要求的入口点。Python 程序通常从顶层代码开始执行,即不在任何函数或类定义内的代码。然而,为了使代码更模块化和易于测试,开发者经常使用一个名为 main 的函数,并通过以下惯用法来控制程序的执行:

复制代码
def main():
    # 主程序逻辑写在这里
    print("Hello, World!")

if __name__ == "__main__":
    main()

if name == "main"

  • if __name__ == "__main__":这是一个常见的 Python 惯用法,它检查当前模块是否是直接运行的(而不是被导入为另一个模块的一部分)。如果是直接运行,则调用 main() 函数。

每个模块都有一个内置的特殊属性 name。这个属性的值取决于模块是如何使用的:

当模块作为主程序被运行时:如果一个 Python 文件被直接执行(例如通过命令行 python myscript.py),那么该文件的 name 属性会被设置为字符串 "main"。

当模块被导入时:如果一个 Python 文件是作为模块被其他 Python 文件导入(例如通过 import mymodule),那么该文件的 name 属性将被设置为模块的名字(即文件名,不带 .py 扩展名)。

相关推荐
鹿鹿学长3 分钟前
国赛备赛第一课:高数、线代、概率统计在历年赛题中的真实出镜率盘点
python·自动化
hy.z_7774 分钟前
【C++】9. Vector
开发语言·c++
整个江湖6 分钟前
Python 工程实践:时间区间解析、时区归一化与边界测试
python
2501_909509108 分钟前
DAY 43
python
weixin_4713830318 分钟前
07 LangGraph 集成 RAG
python·langchain·agent·langgraph
维度攻城狮23 分钟前
PyCharm 使用 DevContainer 开发:打造一致、隔离、高效的开发环境
ide·python·pycharm·devcontainer
Tim_1030 分钟前
【C++】023、移动语义&深拷贝
开发语言·c++·算法
ctlover38 分钟前
Python模块与包
开发语言·python
雨田言炎40 分钟前
十、QThread多线程
linux·服务器·开发语言·前端·qt
月光船幽幽40 分钟前
锁死后干预有效性的关键突破
人工智能·python·算法