python中不存在像const那樣的常量關鍵字,只是在內建空間中提供了一小部分常量,比如true、false、none等。那麼在python中如何使用常量呢?一般來說有如下兩種方法:
import const
const.author =
'test'
# 將常量集中到乙個檔案 > 無論採用那種方式實現常量,都建議將常量集中到乙個檔案中,因為這樣有利於維護,一旦修改常量的值,可以集中統一進行而不是逐個進行檢查。
#coding:utf-8
class
_const
:class
consterror
(typeerror)
:pass
class
constcaseerror
(consterror)
:pass
def__setattr__
(self, name, value)
:if name in self.__dict__:
raise self.consterror(
"can't change const %s"
% name)
ifnot name.isupper():
raise self.constcaseerror(
'const name "%s" is not all uppercase'
% name)
self.__dict__[name]
= value
const = _const(
)const.pi =
3.14
from const import const
print
(const.pi)
類中的常量
類中的常量 有時我們希望某些常量只在類中有效。由於 define定義的巨集常量是全域性的,不能達到目的,於是想當然地覺得應該用const修飾資料成員來實現。const資料成員的確是存在的,但其含義卻不是我們所期望的。const資料成員只在某個物件生存期內是常量,而對於整個類而言卻是可變的,因為類可以...
類中的常量
類中的常量 2008年03月14日 星期五 上午 00 21 有時我們希望某些常量只在類中有效。由於 define 定義的巨集常量是全域性的,不能達到目的,於是想當然地覺得應該用const 修飾資料成員來實現。const 資料成員的確是存在的,但其含義卻不是我們所期望的。const 資料成員只在某個...
Python 類的構造
定義dog類,類名一般首字母大寫。方法 init 是乙個特殊的方法,請注意是雙下劃線。每當你根據dog類建立新例項時,python都會自動執行它。在這個方法的名稱中,開頭和末尾各有兩個下劃線,這是一種約定,旨在避免python預設方法與普通方法發生名稱衝突。類的方法與普通的函式只有乙個特別的區別 它...