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 扩展名)。

相关推荐
xiaoye37086 小时前
Java 自动装箱 / 拆箱 原理详解
java·开发语言
ZTLJQ7 小时前
数据的基石:Python中关系型数据库完全解析
开发语言·数据库·python
夏霞7 小时前
c# signlar 客户端传递参数给服务端配置方法
开发语言·c#
迷藏4948 小时前
**发散创新:基于 Rust的开源权限管理系统设计与实战**在现代软件架构中,**权限控制**早已不
java·开发语言·rust·开源
FreakStudio8 小时前
lvgl-micropython、lv_micropython和lv_binding_micropython到底啥关系?一文读懂
python·单片机·嵌入式·面向对象·电子diy
2301_818419018 小时前
C++中的解释器模式变体
开发语言·c++·算法
小江的记录本8 小时前
【Redis】Redis全方位知识体系(附《Redis常用命令速查表(完整版)》)
java·数据库·redis·后端·python·spring·缓存
摇滚侠8 小时前
Java 项目《谷粒商城-1》架构师级Java 项目实战,对标阿里 P6-P7,全网最强,实操版本
java·开发语言
dinl_vin9 小时前
Python 数据分析入门系列(一):从NumPy开始
python·数据分析·numpy
biter down9 小时前
C++11 统一列表初始化+std::initializer_list
开发语言·c++