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开始的。

相关推荐
衍生星球几秒前
【Java 语言】— 方法(方法定义、调用、参数、返回值、方法重载)
java·开发语言·方法
CodeGL6 分钟前
16、Python Web开发
开发语言·前端·python
喵了几个咪8 分钟前
GoWind UBA 拆解:把 Doris UNIQUE KEY 翻译成 ClickHouse——读数正确性对齐实录
开发语言·后端·clickhouse·微服务·golang·gowind
FRing0313 分钟前
JavaScript入门到精通二十九(内置构造函数(Object、Array))
开发语言·前端·javascript
syagain_zsx16 分钟前
ODB 与 MySQL:C++ 里的 ORM 实践(类即表、事务铁律与查询封装)
开发语言·数据库·c++·mysql·工具库·1024程序员节
小嘉丶学长19 分钟前
Day08 · 字符串(二)
服务器·开发语言·python·学习·1024程序员节
BD_Marathon24 分钟前
【Python】列表推导式
python
2501_9481226334 分钟前
Qs 跨端三方库仓颉适配全流程
python·react native·django·tornado
萌动的小火苗37 分钟前
MQTT的QoS0、QoS1、QoS2有什么区别?
开发语言·网络·python·php·信息与通信
买房动力十足37 分钟前
秒杀商城 + AI 运营:Lua 防超卖、MQ 削峰,AI 负责选品和策划
开发语言·人工智能·lua