最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python自動打印被調(diào)用函數(shù)變量名及對應(yīng)值?

 更新時(shí)間:2022年07月19日 08:44:28   作者:Jayce~  
這篇文章主要介紹了Python自動打印被調(diào)用函數(shù)的變量名及對應(yīng)的值,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià),需要的朋友可以參考一下?

1.軟件環(huán)境

Windows10 教育版64位
Python 3.6.3

2.問題描述

我們在定義一個(gè)函數(shù)或者是調(diào)用一個(gè)函數(shù)的時(shí)候,總是希望能夠知道傳入該被調(diào)用函數(shù)的具體值是多少?是否符合我們的預(yù)期?因此我們往往會將我們關(guān)心的值給打印出來(當(dāng)然debug也可以,但不能每次都debug吧?),如下,我們創(chuàng)建了一個(gè)initial_printer示例函數(shù):

def initial_printer(variable_a, variable_b, variable_c, variable_d, variable_e, variable_f):
    print('打印所有的變量:variable_a:{}, variable_b:{},, variable_c:{},, variable_d:{},, variable_e:{},, variable_f:{}'.format(
        variable_a,
        variable_b,
        variable_c,
        variable_d,
        variable_e,
        variable_f))
    return variable_a + variable_b + variable_c + variable_d + variable_e + variable_f


if __name__ == '__main__':
    result = initial_printer(variable_a=1, variable_b=2, variable_c=3, variable_d=4, variable_e=5, variable_f=6)

該函數(shù)將所有傳入的變量使用Python自帶的print函數(shù)打印了出來,運(yùn)行之后確實(shí)看到打印成功了:

但這種方法有至少2個(gè)弊端:

  • 有可能會因?yàn)槟愕拇中拇笠?,在使?code>print格式化輸出時(shí),函數(shù)名和值錯位,導(dǎo)致變量值打印錯誤,即variable_a打印的可能是其它變量的值;
  • 如果你要新增一個(gè)變量或修改變量名稱,那么又要修改print里面的變量和值;更進(jìn)一步的,如果你的這個(gè)函數(shù)經(jīng)常被修改,不可能每次都來修改上述用來打印變量的代碼;

那這個(gè)時(shí)候是否有一種辦法,在我們添加變量時(shí),不需要修改打印的代碼,讓Python自動打印被調(diào)用函數(shù)的變量名及對應(yīng)的值

3.解決方法

這個(gè)時(shí)候就需要介紹今天的主角了:Python自帶的locals()函數(shù),該函數(shù)會以字典類型返回當(dāng)前位置的全部局部變量。
對于函數(shù), 方法lambda 函式, ,以及實(shí)現(xiàn)了 __call__ 方法的類實(shí)例,它都返回 True。因此,我們只需要將之前的打印語句:

    print('打印所有的變量:variable_a:{}, variable_b:{},, variable_c:{},, variable_d:{},, variable_e:{},, variable_f:{}'.format(
        variable_a,
        variable_b,
        variable_c,
        variable_d,
        variable_e,
        variable_f))

換成locals()即可,即:

        # print('打印所有的變量:variable_a:{}, variable_b:{},, variable_c:{},, variable_d:{},, variable_e:{},, variable_f:{}'.format(
    #     variable_a,
    #     variable_b,
    #     variable_c,
    #     variable_d,
    #     variable_e,
    #     variable_f))
    print('打印所有的變量:', locals())

4.結(jié)果預(yù)覽

可以看到,只需要一個(gè)locals()函數(shù)即可自動打印被調(diào)用函數(shù)的變量名和值,并且你隨便怎么添加或修改變量名,它都會自動同步,簡直不要太方便?。?!

到此這篇關(guān)于Python自動打印被調(diào)用函數(shù)的變量名及對應(yīng)的值 的文章就介紹到這了,更多相關(guān)Python打印調(diào)用函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python全棧之學(xué)習(xí)HTML

    Python全棧之學(xué)習(xí)HTML

    這篇文章主要為大家介紹了Python全棧之HTML,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01
  • keras 獲取某層的輸入/輸出 tensor 尺寸操作

    keras 獲取某層的輸入/輸出 tensor 尺寸操作

    這篇文章主要介紹了keras 獲取某層的輸入/輸出 tensor 尺寸操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Sentry的安裝、配置、使用教程(Sentry日志手機(jī)系統(tǒng))

    Sentry的安裝、配置、使用教程(Sentry日志手機(jī)系統(tǒng))

    Sentry?是一個(gè)實(shí)時(shí)事件日志記錄和聚合平臺,由于ExceptionLess官方提供的客戶端只有.Net/.NetCore平臺和js的,本文繼續(xù)介紹另一個(gè)日志收集系統(tǒng)Sentry,感興趣的朋友一起看看吧
    2022-07-07
  • python樹的雙親存儲結(jié)構(gòu)的實(shí)現(xiàn)示例

    python樹的雙親存儲結(jié)構(gòu)的實(shí)現(xiàn)示例

    本文主要介紹了python樹的雙親存儲結(jié)構(gòu),這種存儲結(jié)構(gòu)是一種順序存儲結(jié)構(gòu),采用元素形如“[結(jié)點(diǎn)值,雙親結(jié)點(diǎn)索引]”的列表表示,感興趣的可以了解一下
    2023-11-11
  • Python使用MyQR制作專屬動態(tài)彩色二維碼功能

    Python使用MyQR制作專屬動態(tài)彩色二維碼功能

    MyQR是一個(gè)能夠生成自定義二維碼的第三方庫,你可以根據(jù)需要生成普通二維碼、帶圖片的藝術(shù)二維碼,也可以生成動態(tài)二維碼。這篇文章主要介紹了Python使用MyQR制作專屬動態(tài)彩色二維碼,需要的朋友可以參考下
    2019-06-06
  • Python如何給函數(shù)庫增加日志功能

    Python如何給函數(shù)庫增加日志功能

    這篇文章主要介紹了Python如何給函數(shù)庫增加日志功能,文中講解非常細(xì)致,代碼幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下
    2020-08-08
  • python中os包的用法

    python中os包的用法

    這篇文章主要介紹了python中os包的用法,文中給大家提到了python中os的常用方法,給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Python中文分詞庫jieba,pkusegwg性能準(zhǔn)確度比較

    Python中文分詞庫jieba,pkusegwg性能準(zhǔn)確度比較

    這篇文章主要介紹了Python中文分詞庫jieba,pkusegwg性能準(zhǔn)確度比較,需要的朋友可以參考下
    2020-02-02
  • Python的Flask框架中配置多個(gè)子域名的方法講解

    Python的Flask框架中配置多個(gè)子域名的方法講解

    Fask中可以通過通配符子域的方式來部署多個(gè)子域名,這里我們就來作一個(gè)Python的Flask框架中配置多個(gè)子域名的方法講解,需要的朋友可以參考下
    2016-06-06
  • 解讀時(shí)間序列分析之ADF檢驗(yàn)

    解讀時(shí)間序列分析之ADF檢驗(yàn)

    這篇文章主要介紹了解讀時(shí)間序列分析之ADF檢驗(yàn),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12

最新評論

庄河市| 华宁县| 井研县| 秀山| 上饶县| 海丰县| 东乡族自治县| 五华县| 东至县| 阿拉善左旗| 肇东市| 鱼台县| 平顶山市| 宜黄县| 四子王旗| 射阳县| 汽车| 浦县| 望奎县| 九寨沟县| 湖南省| 宁海县| 南皮县| 公主岭市| 达孜县| 黄山市| 池州市| 陇南市| 锦州市| 勐海县| 平江县| 平定县| 含山县| 连州市| 大关县| 北票市| 名山县| 乡城县| 凤冈县| 琼海市| 兴文县|