關於python中實現常量功能的信息

本文目錄一覽:

如何在python里用常量?

你所謂的無非就是宏定義

宏定義python是可以實現的,但是毫無必要,向python這樣的若類型語言,普通的變量替換不就能變相解決一般的宏替換了,為什麼還要用到宏定義

python常量基本類型有哪些

4、Python有五個標準的數據類型:

Numbers(數字)

String(字符串)

List(列表)

Tuple(元組)

Dictionary(字典)

4.1 Numbers 四種不同的數值類型:

int(有符號整型) ,long(長整型[也可以代表八進制和十六進制]),Python使用”L”來顯示長整型 ,float(浮點型),complex(複數)複數的實部a和虛部b都是浮點型;

4.2 String 字符串列表有取值順序:

從左到右索引默認0開始的,最大範圍是字符串長度少1。例如:print str[0] # 輸出字符串中的第一個字符;

4.3 List 大多數集合類的數據結構實現,支持字符,數字,字符串甚至可以包含列表(所謂嵌套)

加號(+)是列表連接運算符,星號(*)是重複操作。例如:print list * 2 # 輸出列表兩次 print list + ‘test’# 打印組合的列表 ;

4.4 tuple 元組類似於List,元組是不允許更新的。而列表是允許更新的。

例如:

tuple = ( ‘abcd’, 786 , 2.23, ‘john’, 70.2 )

list = [ ‘abcd’, 786 , 2.23, ‘john’, 70.2 ]

tuple[2] = 1000 # 元組中是非法應用

list[2] = 1000 # 列表中是合法應用

4.4 dictionary 是除列表以外Python之中最靈活的內置數據結構類型。列表是有序的對象集合,字典是無序的對象集合。

字典(dictionary)是除列表以外Python之中最靈活的內置數據結構類型。列表是有序的對象集合,字典是無序的對象集合。

例如:

dict = {‘name’: ‘Jack’,’NO.’:6734, ‘grade’: ‘h1’}

print tinydict.keys() # 輸出所有鍵

print tinydict.values() # 輸出所有值

python中常量類型有哪些

常量定義:不可以被改變的量python中無固定語法,約定俗成的是將變量名全部大寫。

例如:

PI=3.141592653BIRTH_OF_SYLAR=1990

Python並未提供如C/C++/Java一樣的const修飾符。

換言之,#python中沒有常量。

python提供了新的方法實現常量:即通過自定義類實現常量。

需要滿足兩個條件:

命名全部為大寫值,被賦值便不可再修改。

例如:

HOST=’127.0.0.1′

在python中怎麼定義常量

通常是在py  函數上面,import下面

大寫字母作為常量名。

比如:

import xxx

WORKER_NUMBER = 100

def hehe():

    ……

如何定義和使用Python中常量

一、訪問字典的元素使用dobj.get(key, somethingelse),如果對應key值元素不存在,你將會得到somethingelse值,例如“not found”不要使用dobj[key],因為如果key對應元素不存在,則會產生KeyError異常,這樣必須使用try…except來封裝二、名字空間中的屬性可以通過字典__dict__來訪問__setattr__負責處理屬性賦值,其內進行賦值時要使用self.__dict__[attr] = value以防止遞歸三、sys.modules是一個字典,它包含了從Python開始運行起,被導入的所有模塊。鍵字就是模塊名,鍵值就是模塊對象。請注意除了你的程序導入的模塊外還有其它模塊。Python在啟動時預先裝入了一些模塊,如果你在一個Python IDE環境下,sys.modules包含了你在IDE中運行的所有程序所導入的所有模塊定義class _const(object):class ConstError(TypeError): passdef __setattr__(self, name, value):if self.__dict__.has_key(name):raise self.ConstError, “Cant rebind const(%s)” % nameself.__dict__[name] = valuedef __delattr__(self, name):if name in self.__dict__:raise self.ConstError, “Cant unbind const(%s)” % nameraise NameError, nameimport syssys.modules[__name__] = _const()使用import constconst.value = somevalueconst.value = newvalue # 產生異常const.ConstError技巧1、使用__setattr__來控制重新綁定2、sys.modules[name]得到的是模塊對象,通過模塊對象可以訪問其模塊屬性;而Python不會進行嚴格的類型檢測,所以直接將一個 _const類對象加入sys.modules字典,而__name__的值為對應模塊const的名字const,通過 sys.modules[__name__] = _const()用類對象替換模塊對象,將對應的名字空間加以限制,當使用import const時,會發生sys.modules[const] = _const();而訪問const.attrvalue時會發生sys.modules[const].attrvalue,即 _const().attrvalue

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/276090.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-17 19:38
下一篇 2024-12-17 19:38

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • 蝴蝶優化算法Python版

    蝴蝶優化算法是一種基於仿生學的優化算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化算法Python版…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29

發表回復

登錄後才能評論