python定义常量
2015-12-07 14:55
465 查看
python中没有定义常量,但可以自己定义一个类来设置常量
# -*- coding: UTF-8 -*- # Filename: const.py class _const: class ConstError(TypeError):pass def __setattr__(self, name, value): if self.__dict__.has_key(name): raise self.ConstError, "Can't rebind const (%s)" %name self.__dict__[name]=value import sys sys.modules[__name__] = _const()
该类定义了一个方法setattr(),和一个异常ConstError,ConstError类继承自类TypeError.
通过调用类自带的字典dict, 判断定义的常量是否包含在字典中。如果字典中包含此变量,将抛出异常,否则,给新创建的常量赋值.
最后两行代码的作用是把const类注册到sys.modules这个全局字典中。
pass的用法可以参考 python pass的用法
raise 抛出异常,后面的代码均不执行
具体用法可参考 python中的异常处理
相关文章推荐
- Python调用windows下DLL详解
- ipython的notebook
- Python中的list,tuple,dict,set
- python if __name__ = __main___
- python --curl重定向到文件范例
- Python标准库04 文件管理 (部分os包,shutil包)
- Python标准库03 路径与文件 (os.path包, glob包)
- Python标准库02 时间与日期 (time, datetime包)
- Python标准库01 正则表达式 (re包)
- Python进阶11-标准库介绍02
- Python进阶10-标准库介绍01
- 零基础入门学习Python(3):数据类型
- python找出列表重复值
- Python-常用模块
- python核心编程-GUI例子
- python3 下的文件输入输出特性以及如何覆盖文件内容和接下去输入
- 《利用python进行数据分析》读书笔记--第八章 绘图和可视化
- python自动化测试(2)-自动化基本技术原理
- Python入门简单操作
- day7 python学习随笔