python通过函数属性实现全局变量的方法

yipeiwu_com6年前Python基础

本文实例讲述了python通过函数属性实现全局变量的方法。分享给大家供大家参考。具体分析如下:

python的函数可以定义属性,而且是全局的,这个非常好用,例如用于数字累加,你不用专门去定义一个全局变量,使用函数的属性即可。

def add(x=1):
  try:
    add.sum += x
  except AttributeError:
    add.sum = x
  return add.sum
print add(3)
print add(4)
print add(10)
class Ax(object):
  def __init__(self, val=0):
    self.sum = val
     
  def __call__(self, x=1):
    self.sum += x
    return self.sum
add = Ax()    
print add(3)
print add(4)
print add(10)

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python 创建一个空dataframe 然后添加行数据的实例

实例如下所示: import pandas as pd import re import math dframe1 = pd.read_excel("window regulator...

解决Python设置函数调用超时,进程卡住的问题

背景: 最近写的Python代码不知为何,总是执行到一半卡住不动,为了使程序能够继续运行,设置了函数调用超时机制。 代码: import time import signal...

python数字图像处理实现直方图与均衡化

python数字图像处理实现直方图与均衡化

在图像处理中,直方图是非常重要,也是非常有用的一个处理要素。 在skimage库中对直方图的处理,是放在exposure这个模块中。 1、计算直方图 函数:skimage.exposur...

python实现异常信息堆栈输出到日志文件

将try except中捕获到的异常信息输出到日志文件中,方便查找错误原因,tranceback模块提供了把详细出错堆栈信息格式化成字符串返回函数format_exc(). 具体代码如下...

python matplotlib 在指定的两个点之间连线方法

python matplotlib 在指定的两个点之间连线方法

为了找到matplotlib在两个点之间连线的方法真是费了好大功夫,最后还是决定用简单的 plt.plot 来解决。如果有好多对点,则可以通过循环实现连接,还可以用 plt.arrow...