python定義常量

2021-07-08 16:20:34 字數 725 閱讀 7690

# -*- 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語言常量 Python 定義常量

python python開發 python語言 python 定義常量 常量在編寫程式的時候,一旦設定就不能再進行變動,常量一種約定俗成的方式,所有字母大寫並用下劃線分隔單詞的方式 如max value,out time等 但是python沒有提供設定常量用法,需要自己自定義類實現常量功能。自定義...

Python定義常量

i 訪問字典的元素使用dobj.get key somethingelse 如果對應key值元素不存在,你將會得到somethingelse值,例如 not found 不要使用dobj key 因為如果key對應元素不存在,則會產生keyerror異常,這樣必須使用try except來封裝 ii...

python定義常量

max client 100max connection 1000 connection timeout 600import sys 該類定義了乙個方法 setattr 和乙個異常consterror,consterror類繼承 自類typeerror.通過呼叫類自帶的字典 dict 判斷定義的常量...