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

相关推荐
波力海苔夹心脆67523 分钟前
C# WPF 资源字典详解:ResourceDictionary、MergedDictionaries 与自定义控件案例
开发语言·c#·wpf·入门教程·resource·资源字典
不会算法的笨小孩44 分钟前
异常的使用以及会出现的问题
开发语言·c++·c++11·异常
天天被压力2 小时前
【A股分钟级高频数据完全手册 #07】北交所历史分钟K线接口:京市Pro版分时批量
java·人工智能·python
天天被压力2 小时前
【A股分钟级高频数据完全手册 #08】股票日、分时数据接口对比:普通分时与Pro版差异实测
java·人工智能·python
特立独行的猫A2 小时前
AI 时代,我为什么推荐用 cj-tauri 开发桌面应用
java·后端·python
小lo想吃棒棒糖2 小时前
把机器人训练从 GPU 搬到昇腾 NPU:启元 Q1 起身动作 PPO 训练全记录
python·机器人·昇腾·启元机器人
Thanks_ks2 小时前
【第 006 讲】搭建 PyCharm 开发环境:PyCharm 的下载与安装 | 初始设置与常用配置
ide·python·pycharm·开发工具·jetbrains·开发环境·集成开发环境
Hhy_11073 小时前
《C++深度解构06》手撕 string —— 从底层内存管理到深浅拷贝彻底吃透
c语言·开发语言·c++·学习·visual studio
starzy19903 小时前
深入理解Scala函数定义:从方法到函数的类型跨越
开发语言·scala
starzy19903 小时前
深入理解Scala递归函数:从栈溢出到尾调用优化
开发语言·scala