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

相关推荐
沫璃染墨3 小时前
现代C++⊂C++11篇(一)列表初始化全解 & std::initializer_list
开发语言·c++
阿米亚波3 小时前
【C++ STL】std::forward_list
开发语言·c++·笔记·stl·visual studio·forward_list
盼小辉丶3 小时前
OpenCV-Python实战——分析与加速OpenCV应用程序
python·神经网络·opencv·计算机视觉
buhuizhiyuci3 小时前
【python篇——一周速通python语法】python的条件语句和循环语句
开发语言·python
geovindu3 小时前
go: Recursion Algorithm
开发语言·后端·算法·golang·递归算法
geovindu3 小时前
CSharp: Composite Pattern
开发语言·后端·c#·组合模式·结构型模式
学AI不秃头3 小时前
官方要 16GB,实测 4-bit 压到 2.9GB:把 LocateAnything-3B 搬上 8GB Jetson
python·深度学习·机器学习·计算机视觉·机器人
消失的旧时光-19433 小时前
KMP Web 开发实战(二):js、wasmJs、browser、executable 到底是什么意思?
开发语言·前端·javascript·跨平台·kmp
sycmancia3 小时前
Qt——线程的生命期问题
开发语言·qt