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

yipeiwu_com7年前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中用函数作为返回值和实现闭包的教程

函数作为返回值 高阶函数除了可以接受函数作为参数外,还可以把函数作为结果值返回。 我们来实现一个可变参数的求和。通常情况下,求和的函数是这样定义的: def calc_sum(*ar...

python中global用法实例分析

本文实例讲述了python中global用法。分享给大家供大家参考。具体分析如下: 1、global---将变量定义为全局变量。可以通过定义为全局变量,实现在函数内部改变变量值。 2、一...

Python def函数的定义、使用及参数传递实现代码

Python编程中对于某些需要重复调用的程序,可以使用函数进行定义,基本形式为: def 函数名(参数1, 参数2, ……, 参数N): 执行语句函数名为调用的表示名,参数则是传入的参数...

Django中对通过测试的用户进行限制访问的方法

限制访问可以基于某种权限,某些检查或者为login视图提供不同的位置,这些实现方式大致相同。 一般的方法是直接在视图的 request.user 上运行检查。 例如,下面视图确认用户登...

Pandas读取MySQL数据到DataFrame的方法

方法一: #-*- coding:utf-8 -*- from sqlalchemy import create_engine class mysql_engine(): us...