欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python中使用“[函数名].[变量名]”声明变量

程序员文章站 2022-03-09 10:48:37
...

在《机器学习实战》中,作者使用了一种[函数名].[变量名]的格式声明并引用变量。

示例如下

def createPlot(inTree):
    fig = plt.figure(1, facecolor='white')
    fig.clf()
    axprops = dict(xticks=[], yticks=[])
    createPlot.ax1 = plt.subplot(111, frameon=False, **axprops) #这一行
    plotTree.totalW = float(getNumLeafs(inTree)) #这一行
    plotTree.totalD = float(getTreeDepth(inTree)) #这一行
    plotTree.xOff = -0.5/plotTree.totalW; plotTree.yOff = 1.0 #还有这一行
    plotTree(inTree, (0.5, 1.0), '')
    plt.show()

那么使用这种格式声明的变量有何特殊之处呢?

查阅相关资料后,原来,这样声明的变量相当于C/C++里的静态变量

Python语言本身的角度而言:

Functions are first-class objects

即:函数本身也是对象,也可以像其他对象一样拥有属性;我们可以把这样声明的变量看作该函数的属性。

参考文献
what-does-a-function-followed-by-dot-then-variable-func-var-means-in-python?

Python语法基础——关于全局变量与局部变量

相关标签: python