Python 動態變數名與呼叫介紹
導讀 | Python是一種計算機程式設計語言。是一種物件導向的動態型別語言,最初被設計用於編寫自動化 ( )。 |
動態變數名賦值
在使用 tkinter 時需要動態生成變數,如動態生成 var1...var10 變數。
使用 exec 動態賦值
exec 在 python3 中是內建函式,它支援 python 程式碼的動態執行。
使用 exec 動態賦值
exec 在 python3 中是內建函式,它支援 python 程式碼的動態執行。
例項
>>> for i in range(5): ... exec('var{} = {}'.format(i, i)) ... >>> print(var0, var1, var2, var3 ,var4) 0 1 2 3 4 >>>
利用名稱空間動態賦值
在 Python 的名稱空間中,將變數名與值儲存在字典中,可以透過 locals(),globals() 函式分別獲取區域性名稱空間和全域性名稱空間。
例項
>>> names = locals() >>> for i in range(5): ... names['n' + str(i) ] = i ... >>> print(n0, n1, n2, n3, n4) 0 1 2 3 4 >>>
在類中使用動態變數
Python 的類物件的屬性儲存在的 __dict__ 中。__dict__ 是一個詞典,鍵為屬性名,值對應屬性的值。
例項
>>> print(n0, n1, n2, n3, n4) 0 1 2 3 4 >>> class Test_class(object): ... def __init__(self): ... names = self.__dict__ ... for i in range(5): ... names['n' + str(i)] = i ... >>> t = Test_class() >>> print(t.n0, t.n1, t.n2, t.n3, t.n4) 0 1 2 3 4
呼叫動態變數
事實上,對於重複性的變數,我們一般不會這樣呼叫變數,如:var0, var1, var2, var3 ,var4....varN,可以利用下面方法動態呼叫變數。
先定義如下變數:
例項
>>> for i in range(5): ... exec('var{} = {}'.format(i, i)) ... >>> print(var0, var1, var2, var3 ,var4) 0 1 2 3 4
利用 exec 函式
同樣地,可以使用 exec 呼叫變數
例項
>>> for i in range(5): ... exec('print(var{}, end=" ")'.format(i)) ... 0 1 2 3 4
利用名稱空間
因為 空間的 locals() 與 globals() 均會返回一個字典,利用字典的 get 方法獲取變數的值。
例項
>>> names = locals() >>> for i in range(5): ... print(names.get('var' + str(i)), end=' ') ... 0 1 2 3 4
原文來自:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2688035/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python 動態變數名定義與呼叫Python變數
- Python動態變數名定義與呼叫Python變數
- 物件呼叫動態變數物件變數
- Oracle 靜態引數與動態引數型別介紹Oracle型別
- PHP的靜態變數介紹PHP變數
- JS建立動態的變數名JS變數
- JS如何動態生成變數名[重點]JS變數
- mybatis動態呼叫表名和欄位名MyBatis
- 動態VLAN介紹
- Python中動態類和動態方法的建立與呼叫Python
- 複製狀態與變數記錄表 | performance_schema全方位介紹變數ORM
- Python生成動態二維碼,MyQR介紹Python
- 群簽名與環簽名的介紹
- javascript 變數簡單介紹JavaScript變數
- javascript動態改變元素css樣式簡單介紹JavaScriptCSS
- Mybatis介紹之 動態SQLMyBatisSQL
- 動態密碼演算法介紹與實現密碼演算法
- SAP ABAP Function Module 的動態呼叫方式使用方式介紹試讀版Function
- 簡單介紹Lua中的變數與賦值方法變數賦值
- 簡單介紹nginx 變數使用Nginx變數
- javascript變數宣告簡單介紹JavaScript變數
- javascript變數汙染簡單介紹JavaScript變數
- linux 環境變數介紹Linux變數
- JAVA環境變數配置介紹Java變數
- 反射可以取到原始呼叫方法的變數名嗎?反射變數
- 靜態變數與靜態方法變數
- python變數與變數作用域Python變數
- 動態陣列介紹----Delphi (轉)陣列
- Python 入門系列 —— 5. 三大變數型別介紹Python變數型別
- shell程式設計–bash變數介紹程式設計變數
- javascript變數作用於簡單介紹JavaScript變數
- javascript變數宣告提升簡單介紹JavaScript變數
- linux DISPLAY環境變數介紹Linux變數
- Java 語法介紹(三):變數(轉)Java變數
- MongoDB啟動引數介紹MongoDB
- python 獲取變數名的方法Python變數
- Transact-SQL 示例 - 如何在拼接的動態sql內呼叫外部變數SQL變數
- Python中已有的多個變數批量(動態)使用Python變數