python命名空間(namespace)簡單介紹
更新時間:2019年08月10日 08:56:49 作者:人生與戲
這篇文章主要介紹了python命名空間(namespace)簡單介紹,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
命名空間: 每一個作用域變量存儲的位置,或者解釋為 存儲作用域中變量的字典。
作用: 獲取想查看某個作用域中的變量名、變量值。
使用方法: locals() #當前命名空間
1. 效果圖:
2. 代碼
a=10 b=20 # 定義一個變量接收全局命名空間里的變量名、變量值 global_namespace=locals() print(global_namespace) print('\n\n\n') def one(): c=30 d=40 # 定義一個變量接收局部命名空間里的變量名、變量值 local_namespace=locals() print(local_namespace) # 調用one函數(shù) one()
# 命名空間(namespace) # 命名空間指的是變量存儲的位置,每一個變量都需要存儲到指定的命名空間當中 # 每一個作用域都會有一個它對應的命名空間 # 全局命名空間,用來保存全局變量。函數(shù)命名空間用來保存函數(shù)中的變量 # 命名空間實際上就是一個字典,是一個專門用來存儲變量的字典 # locals()用來獲取當前作用域的命名空間 # 如果在全局作用域中調用locals()則獲取全局命名空間,如果在函數(shù)作用域中調用locals()則獲取函數(shù)命名空間 # 返回的是一個字典 scope = locals() # 當前命名空間 print(type(scope)) # print(a) # print(scope['a']) # 向scope中添加一個key-value scope['c'] = 1000 # 向字典中添加key-value就相當于在全局中創(chuàng)建了一個變量(一般不建議這么做) # print(c) def fn4(): a = 10 # scope = locals() # 在函數(shù)內部調用locals()會獲取到函數(shù)的命名空間 # scope['b'] = 20 # 可以通過scope來操作函數(shù)的命名空間,但是也是不建議這么做 # globals() 函數(shù)可以用來在任意位置獲取全局命名空間 global_scope = globals() # print(global_scope['a']) global_scope['a'] = 30 # print(scope) fn4()
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- Python關于__name__屬性的含義和作用詳解
- 如何使用python3獲取當前路徑及os.path.dirname的使用
- python__name__原理及用法詳解
- 詳解python中__name__的意義以及作用
- 解決Python找不到ssl模塊問題 No module named _ssl的方法
- 正確理解Python中if __name__ == ''__main__''
- Python 獲取主機ip與hostname的方法
- Python os.rename() 重命名目錄和文件的示例
- 解決python "No module named pip"的問題
- Python命名空間namespace及作用域原理解析
相關文章
Python虛擬環(huán)境的創(chuàng)建和使用詳解
這篇文章主要給大家介紹了關于Python虛擬環(huán)境的創(chuàng)建和使用的相關資料,文中通過圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-09-09解讀Tensorflow2.0訓練損失值降低,但測試正確率基本不變的情況
這篇文章主要介紹了Tensorflow2.0訓練損失值降低,但測試正確率基本不變的情況,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06解決Pytorch中Batch Normalization layer踩過的坑
這篇文章主要介紹了解決Pytorch中Batch Normalization layer踩過的坑,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-05-05