python类和函数中使用静态变量的方法

 更新时间:2015年05月09日 10:59:43   作者:igoo  
这篇文章主要介绍了python类和函数中使用静态变量的方法,实例分析了三种常用的实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了python类和函数中使用静态变量的方法。分享给大家供大家参考。具体分析如下:

在python的类和函数(包括λ方法)中使用静态变量似乎是件不可能[Nothing is impossible]的事,
但总有解决的办法,下面通过实现一个类或函数的累加器来介绍一些较为非主流的方法

方法一、通过类的__init__和__call__方法

class foo:
  def __init__(self, n=0):
    self.n = n
  def __call__(self, i):
    self.n += i
    return self.n
a=foo()
print a(1)
print a(2)
print a(3)
print a(4)

方法二、在函数中定义一个类

def foo2 (n=0):
  class acc:
    def __init__ (self, s):
      self.s = s
    def inc (self, i):
      self.s += i
      return self.s
  return acc (n).inc
a=foo2()
print a(1)
print a(2)
print a(3)
print a(4)

方法三、使用堆上的匿名参数

def foo3 (i, L=[]):
  if len(L)==0:
    L.append(0)
  L[0]+=i
  return L[0]
 
print foo3(1)
print foo3(2)
print foo3(3)
print foo3(4)

在python官方的2.6环境下运行,
上述三段代码得到的结果都是

1 
3 
6 
10 

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

相关文章

  • python对字典进行排序实例

    python对字典进行排序实例

    这篇文章主要介绍了python对字典进行排序的方法,是非常实用的技巧,且实例中备有详细的注释,简单易懂,需要的朋友可以参考下
    2014-09-09
  • Python tuple方法和string常量介绍

    Python tuple方法和string常量介绍

    这篇文章主要介绍了Python tuple方法和string常量,文章基于python的相关资料展开详细内容,对初学python的通知有一定的参考价值,需要的小伙伴可以参考一下
    2022-05-05
  • Python环境变量设置方法

    Python环境变量设置方法

    默认情况下,在windows下安装python之后,系统不会自动添加相应的环境变量。此时在命令行输入python命令是不能执行的,配置方法如下
    2016-08-08
  • Python退出时强制运行一段代码的实现方法

    Python退出时强制运行一段代码的实现方法

    这篇文章主要介绍了Python退出时强制运行一段代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • python dir函数快速掌握用法技巧

    python dir函数快速掌握用法技巧

    在本篇文章里小编给大家整理的是一篇关于python dir函数快速掌握用法技巧,有兴趣的朋友们可以学习参考下。
    2020-12-12
  • Python 中Pickle库的使用详解

    Python 中Pickle库的使用详解

    pickle是python语言的一个标准模块,安装python后已包含pickle库,不需要单独再安装。这篇文章主要介绍了Python 中Pickle库的使用详解,需要的朋友可以参考下
    2018-02-02
  • Python绘制七彩花朵(用Turtle)

    Python绘制七彩花朵(用Turtle)

    这篇文章主要给大家介绍了关于Python使用Turtle绘制七彩花朵的相关资料,通过本文介绍的方法就算刚入门的朋友也可以很快的入手绘制出漂亮的七彩花朵,需要的朋友可以参考下
    2023-07-07
  • Python函数返回值实例分析

    Python函数返回值实例分析

    这篇文章主要介绍了Python函数返回值,实例分析了Python中返回一个返回值与多个返回值的方法,需要的朋友可以参考下
    2015-06-06
  • Python tkinter padx参数详解

    Python tkinter padx参数详解

    这篇文章主要介绍了tkinter padx参数,帮助大家更好的理解和学习,感兴趣的朋友可以了解下,希望能够给你带来帮助
    2021-10-10
  • mac系统下安装pycharm、永久激活、中文汉化详细教程

    mac系统下安装pycharm、永久激活、中文汉化详细教程

    这篇文章主要介绍了mac系统下安装pycharm、永久激活、中文汉化详细教程,需要的朋友可以参考下
    2020-11-11

最新评论