python有main函数吗

python和C++/Java不一样,没有主函数一说,也就是说python语句执行不是从所谓的主函数main开始的。

当运行单个python文件时,如运行a.py,这个时候a的一个属性__name__是__main__。

当调用某个python文件时,如b.py调用a.py,这个时候a的属性__name__是模块名a。

复制代码
a = 3
 
def change():
    global a
    a = 10
    return a
 
print a, change(), a
 
if __name__ == "__main__":
    print a, change(), a

执行结果是:

复制代码
3 10 10
10 10 10

从上面的结果可以看出,在执行if后面的语句之前,print a, change(), a已经执行过了,也就是说程序执行并不是从main开始的。

相关推荐
mounter62513 小时前
GCCRS 突破与 Rust 入核:Linux 工具链的重大变革
linux·开发语言·rust·linux kernel·kernel
Buke..13 小时前
【APP 逆向】哔哩哔哩 sign 参数逆向(上):Frida 反调试绕过与 unidbg 调用
java·开发语言·爬虫·python·安卓
abcefg_h13 小时前
MCP 实战指南:如何在项目中使用 Model Context Protocol 及其通信原理
开发语言·后端·golang·mcp
头发够用的程序员13 小时前
ImportError: libopenblas.so.0: cannot open shared object file 完整复盘与解决方案
python·ubuntu
何以解忧,唯有..13 小时前
Python 线程编程:从入门到实战
开发语言·python
l12586514 小时前
# RAG上线评估指标体系:六大核心指标与压测实战全解析
数据库·人工智能·python·mysql·langchain·milvus
我命由我1234514 小时前
人脸识别 - 人脸识别选帧
java·人工智能·python·算法·安全·java-ee·人脸识别
SomeB1oody14 小时前
【RustyML入门】7.2. 深入模型持久化
开发语言·后端·机器学习·rust·教程
yaoxin52112314 小时前
502. Java 反射 - 编写 MessageInterceptor 类
java·开发语言