python的全局静态变量
背景:
User有个自增的id,需要每次创建User的时候,id都自动+1
实现:
user.py
#!/usr/bin/python2.4 class User(object): ID = 10000 def __init__(self): self.id = self._GetNextId() def _GetNextId(self): User.ID += 1 return User.ID def GetId(self): return self.id
ad1.py
#/usr/bin/python2.4 import user class Ad1(object): def __init__(self): u1 = user.UserList() u2 = user.UserList() self.value = [u1.GetId(), u2.GetId()]
ad2.py
#/usr/bin/python2.4 import user class Ad1(object): def __init__(self): u1 = user.User() u2 = user.User() self.value = [u1.GetId(), u2.GetId()]
main函数
#/usr/bin/python2.4 import ad1 import ad2 a1 = ad1.Ad1() a2 = ad2.Ad2() print a1.value + a2.value
运行结果:
[10001, 10002, 10003, 10004]
User.ID果然是静态变量!
python的全局静态变量相关推荐
- 在python中设置静态变量
Python函数的静态变量 C语言中,在函数内部可以定义static类型的变量,这个变量是属于这个函数的全局对象.在Python中也可以实现这样的机制. def f():if not hasattr( ...
- 【C语言】局部变量、全局变量,局部静态变量,全局静态变量,extern,static的区别...
局部变量: 创建在栈区(向下生长),生命周期存在于当前作用域中. 创建时若未初始化,则为随机值. 全局变量: 创建在static区,生命周期一直存在. 创建时若未初始化,则为0. 静态局部变量 ...
- 全局变量和全局静态变量
主要区别就是作用域:全局变量定义的变量可以被其他文件所看见(即可以被其他文件extern),全局静态变量的作用范围只限于本文件中. 关于在头文件中定义:在#include之后会在cpp文件中展开,相当 ...
- wpf绑定全局静态变量并且实现变更通知(mvvm)
在实际的开发中,有一些集合或者属性可能是全局的,比如当你做一个oa的时候,可能需要展示所有的人员,这时这个所有的人员列表显然可以作为全局参数,比如这里有一个全局的静态属性UserList.而你在使用m ...
- 【转载】wpf绑定全局静态变量并且实现变更通知(mvvm)
这篇看了之后,很有启发,也很有用!,分享给大家 以下是转载内容. ---------------- 版权声明:本文为CSDN博主「returnTrue999」的原创文章,遵循CC 4.0 BY-SA版 ...
- python 类中静态变量_Python中的类或静态变量
python 类中静态变量 Python类/静态变量 (Python Class / Static Variables) Class or Static variables are class-rel ...
- python静态变量计数器_如何在Python中使用静态变量在计数
今天,在用Python写一个统计一个文件下有多少文件的小标本时,遇到了一个很棘手的问题.如何在Python中使用静态变量来计数.然后,就在网上一通查找,找的方法都是利用类的方法来实现静态变量.说实话没 ...
- Python实现局部静态变量
python没有局部静态变量,但可以通过以下几种方式实现类似于C语言的函数内局部静态变量. 1.定义函数属性 在python中一切皆对象,函数也是一个对象,因此可以给函数定义属性: def func( ...
- Python函数的静态变量
C语言中,在函数内部可以定义static类型的变量,这个变量是属于这个函数的全局对象.在Python中也可以实现这样的机制. def f():if not hasattr(f, 'x'):f.x = ...
最新文章
- python----面试题(一)
- 【Android 热修复】热修复原理 ( 热修复框架简介 | 将 Java 字节码文件打包到 Dex 文件 )
- PCL中分割_欧式分割(1)
- ZOJ18th省赛 Lucky 7
- 网络组Network Teaming
- ASP.Net 获取服务器信息
- gitlab设置邮件服务器_如何设置您自己的一次性电子邮件服务器
- 基于小波变换的数字图像处理(MATLAB源代码)
- 小程序 | 云函数获取用户openid
- 异步执行线程的两种方法
- 给自己的网站添加网易云音乐歌单吧^ ^
- [转] Java/JSP中使用JDBC连接SQL Server 2005
- 带你进入 jBPM 工作流的世界
- 数学和编程-王垠博客
- 苹果企业开发者账号证书申请(保姆级)
- 前度控制器源代码分析
- 前端-项目引入苹方字体
- 第一次发,可能不太好,别喷我
- 42个5G智慧教育应用场景,告诉你5G将如何改变教育
- Tinkpad T480设置U盘启动
热门文章
- 西安理工大学计算机考研专业课真题答案,2021西安理工大学考研历年真题
- #力扣 LeetCode1646. 获取生成数组中的最大值 @FDDLC
- Unity程序框架总结归置系列(1)——单例基类
- Delphi Thread 线程2
- JS:关于邮箱的正则表达式及规则
- Excel区间数据拆分
- 算法面试必备-----数据分析常见面试题
- 应用matplotlib的imshow函数显示彩色图像(RGB data)报错的解决方法
- (修订)MySQL优化/面试,看这一篇就够了
- 小波变换 完美通俗解读【转载