Python內置函數11——globals()、locals()

文章目錄

    • 概要
    • 基礎用法

概要

  • globals()和locals()都是內置函數,用于獲取當前命名空間中的變量。

  • globals()函數返回全局命名空間的字典,包括全局變量、函數和模塊。它返回一個表示全局命名空間的字典。你可以使用該函數來查看和修改全局命名空間中的變量。

  • locals()函數返回當前命名空間的字典,包括局部變量、函數和模塊。它返回一個表示當前命名空間的字典。如果在全局作用域外調用locals(),它將返回全局命名空間。你可以使用該函數來查看和修改當前命名空間中的變量。

  • 返回值:返回一個字典,包含當前全局作用域或者局部變量的所有變量和它們的值。字典的鍵是變量名,值是對應變量的值。

基礎用法

代碼演示:

x = 10
y = 20def add(a, b):z = a + bprint(locals())add(x, y)
print(globals())# 輸出結果:
# {'a': 10, 'b': 20, 'z': 30}
# {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <...>, '__spec__': None, '__annotations__': {}, '__builtins__': <...>, 'x': 10, 'y': 20, 'add': <function add at 0x...>}

你可以看到,在函數內部調用locals()函數時,返回的字典中包含了局部變量a、b和z。而在函數外部調用globals()函數時,返回的字典中包含了全局變量x、y和函數add的定義。

注意:locals()函數返回的字典是對當前命名空間的引用,對其的修改會直接影響到當前命名空間中的變量。而globals()函數返回的字典是對全局命名空間的引用,對其的修改會直接影響到全局命名空間中的變量。因此,在使用這兩個函數時,需要謹慎操作,以防止意外修改變量。通常情況下,推薦使用局部命名空間來封裝和管理變量,只在必要時才使用globals()和locals()函數。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/713537.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/713537.shtml
英文地址,請注明出處:http://en.pswp.cn/news/713537.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深入剖析k8s-控制器思想

引言 本文是《深入剖析Kubernetes》學習筆記——《深入剖析Kubernetes》 正文 控制器都遵循K8s的項目中一個通用的編排模式——控制循環 for {實際狀態 : 獲取集群中對象X的實際狀態期望狀態 : 獲取集群中對象X的期望狀態if 實際狀態 期望狀態 {// do nothing} else {執行…

buuctf misc做題筆記

喵喵喵 使用stegsolve.jar&#xff0c;按BGR順序提取出一個png圖片&#xff0c;是一個一半得二維碼&#xff0c;修改圖片高度后&#xff0c;解析出一個百度網盤地址&#xff0c;https://pan.baidu.com/s/1pLT2J4f 下載得到壓縮包flag.rar。解壓成功&#xff0c;但是報一個出錯…

4 在QEMU硬件模擬器中運行開源鴻蒙OpenHarmony4.1的操作系統,無需實體開發板

在QEMU硬件模擬器中運行開源鴻蒙OpenHarmony4.1的操作系統&#xff0c;無需實體開發板 作者將狼才鯨日期2024-03-01 先下載源碼和編譯程序&#xff1a; 查看 開源鴻蒙OpenHarmony4.1源碼下載、編譯&#xff0c;生成OHOS_Image可執行文件的最簡易流程 我準備在QEMU模擬器中運行…

LangChain---大型語言模型(LLM)的標準接口和編程框架

1.背景說明 公司在新的一年規劃中突然提出要搞生成式AI(GenAI)的相關東西&#xff0c;在公司分享的參考資料中了解到了一些相關的信息&#xff0c;之所以想到使用LangChain&#xff0c;是因為在應用中遇到了瓶頸問題&#xff0c;除了已經了解和研究過的OpenAI的ChatGpt&#xf…

藍橋杯Java B組歷年真題(2013年-2019年)

一、2013年真題 1、世紀末的星期 使用日期類判斷就行&#xff0c;這里使用LocalDate&#xff0c;也可以使用Calendar類 答案 2099 使用LocalDate import java.time.LocalDate; import java.time.format.DateTimeFormatter; // 1:無需package // 2: 類名必須Main, 不可修改p…

1小時網絡安全事件報告要求,持安零信任如何幫助用戶應急響應?

12月8日&#xff0c;國家網信辦起草發布了《網絡安全事件報告管理辦法&#xff08;征求意見稿&#xff09;》&#xff08;以下簡稱“辦法”&#xff09;。擬規定運營者在發生網絡安全事件時應當及時啟動應急預案進行處置。 1小時報告 按照《網絡安全事件分級指南》&#xff0c…

速盾:動態網站用cdn更慢嗎

當談到網站速度時&#xff0c;內容傳遞網絡&#xff08;Content Delivery Network&#xff0c;CDN&#xff09;是不可忽視的一個因素。很多人可能有疑惑&#xff0c;動態網站使用CDN是否會導致加載速度變慢。為了解決這個問題&#xff0c;我們需要了解動態網站和CDN的工作原理&…

mybatis動態加載mapper.xml

mybatis動態加載mapper.xml mybatis動態加載mapper.xml、springboot mybatis動態加載mapper.xml 教程連接&#xff1a;https://blog.csdn.net/weixin_44480167/article/details/136356398

測試linux系統某些文件屬性之test命令

要檢測系統上某些文件或相關屬性時&#xff0c;我們可以使用test命令&#xff0c;比如&#xff1a;檢查/root/ztj.txt文件是否存在&#xff0c;可以使用test -e /root/ztj.txt命令&#xff0c;不過執行結果不會顯示任何信息&#xff0c;需配合$?或&&及||來展現具體結果…

Find My掃地機器人|蘋果Find My技術與機器人結合,智能防丟,全球定位

掃地機器人又稱自動打掃機、智能吸塵、機器人吸塵器等&#xff0c;是智能家電的一種&#xff0c;能憑借人工智能&#xff0c;自動在房間內完成地板清理工作。一般采用刷掃和真空方式&#xff0c;將地面雜物先吸納進入自身的垃圾收納盒&#xff0c;從而完成地面清理的功能。現今…

[AutoSar]BSW_Com07 CAN報文接收流程的函數調用

目錄 關鍵詞平臺說明一、背景二、順序總覽三、函數說明3.1 Com_RxIndication&#xff08;&#xff09; 關鍵詞 嵌入式、C語言、autosar、OS、BSW 平臺說明 項目ValueOSautosar OSautosar廠商vector &#xff0c;芯片廠商TI 英飛凌編程語言C&#xff0c;C編譯器HighTec (GCC)…

貝葉斯定理與條件獨立假設:樸素貝葉斯分類方法深度解讀

今天給大家分享的是樸素貝葉斯算法&#xff0c;這個算法在實際使用中不是很多&#xff0c;因為現在很多算法已經發展的很好&#xff0c;性能上也比樸素貝葉斯算法的好很多&#xff0c;因此在實際中我們其實看到在實際應用中樸素貝葉斯算法的使用已經比較少&#xff0c;即使出現…

HotFix原理學習 IL2CPP 學習

原文鏈接&#xff1a;Unity 游戲用XLua的HotFix實現熱更原理揭秘-CSDN博客 本文通過對XLua的HoxFix使用原理的研究揭示出來這樣的一套方法。這個方法的 第一步&#xff1a;通過對C#的類與函數設置Hotfix標簽。來標識需要支持熱更的類和函數。第二步&#xff1a;生成函數連接器…

好視通視頻會議系統存在任意文件讀取漏洞復現 [附POC]

漏洞簡介 好視通視頻會議是由深圳市華視瑞通信息技術有限公司開發&#xff0c;其在國內率先推出了3G互聯網視頻會議&#xff0c;并成功應用于SAAS領域。 資產 FOFA:app"好視通-視頻會議" POC GET /register/toDownload.do?fileName../../../../../../../../../.…

代碼隨想錄-回溯算法

組合 //未剪枝 class Solution {List<List<Integer>> ans new ArrayList<>();Deque<Integer> path new LinkedList<>();public List<List<Integer>> combine(int n, int k) {backtracking(n, k, 1);return ans;}public void back…

MySql安全加固:可信IP地址訪問控制 設置密碼復雜度

MySql安全加固&#xff1a;可信IP地址訪問控制 & 設置密碼復雜度 1.1 可信IP地址訪問控制1.2 設置密碼復雜度 &#x1f496;The Begin&#x1f496;點點關注&#xff0c;收藏不迷路&#x1f496; 1.1 可信IP地址訪問控制 當您在創建用戶時使用’%作為主機部分&#xff0c;…

【C語言】字符型變量and整型變量的類型轉換

一、將字符型變量轉換為整型變量 char c A; int i (int)c; 二、將整型變量轉換成字符型變量 int i 65; char c (char)i;

Unity 實戰一:這幾年被廣告刷屏的沙雕跑酷游戲

姐就是女王&#xff0c;功夫跑酷&#xff0c;揀槍干架跑酷等 核心不用說了吧&#xff1a; 就是一個人不斷地跑&#xff0c;獲取不同屬性&#xff0c;判斷是否過關 好的&#xff0c;以下是一篇基于Unity 開發簡易版有障礙物的跑酷游戲的教程博客&#xff1a; 在這篇博客中&…

static在c語言中的作用

1、關鍵字static的作用是什么&#xff1f; 這個簡單的問題很少有人能回答完全。在C語言中&#xff0c;關鍵字static有三個明顯的作用&#xff1a; 1). 在函數體&#xff0c;一個被聲明為靜態的變量在這一函數被調用過程中維持其值不變。 2). 在模塊內(但在函數體外)&#xf…

Linux tload 命令教程:實時監控系統負載(附案例詳解和注意事項)

Linux tload 命令介紹 tload 是一個用于監控系統負載的命令行工具。它以圖形化的方式顯示系統的負載情況&#xff0c;幫助你了解 CPU 和內存的使用情況。 Linux tload 命令適用的 Linux 版本 tload 在大多數 Linux 發行版中都可用。如果你在某些特定的 Linux 發行版上找不到…