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

Python閉包函數(shù)定義與用法分析

 更新時間:2018年07月20日 10:36:38   作者:鎧甲巨人  
這篇文章主要介紹了Python閉包函數(shù)定義與用法,結合實例形式分析了Python閉包函數(shù)的功能、定義、使用方法及相關操作注意事項,需要的朋友可以參考下

本文實例分析了Python閉包函數(shù)定義與用法。分享給大家供大家參考,具體如下:

python的閉包

首先python閉包的作用,一個是自帶作用域,另一個是延遲計算。

閉包是裝飾器的基礎。

閉包的基本形式:

def 外部函數(shù)名():
  內部函數(shù)需要的變量
  def 內部函數(shù)名()
    引用外部的變量
  return 內部函數(shù)

需要注意的是:

函數(shù)的作用域關系在函數(shù)定義階段就已經固定,與調用位置無關。

無論函數(shù)在何處調用,都需要回到定義階段去找對應的作用域關系。

例子:

# -*- coding:utf-8 -*-
#! python2
def tell_info(name):
  print("%s have money %s" %(name,money))
def foo():
  money = 100
  tell_info("bill")
foo()

該代碼tell_info("bill")是在foo函數(shù)中調用,但仍然需要回到定義階段去找作用域關系,而定義的時候引用的money就是全局的Money,當全局不存在money的時候則報錯,拋出未定義錯誤。

所以該段代碼會報錯,如下所示:

Traceback (most recent call last):
  File "C:\py\jb51PyDemo\src\Demo\test.py", line 8, in <module>
    foo()
  File "C:\py\jb51PyDemo\src\Demo\test.py", line 7, in foo
    tell_info("bill")
  File "C:\py\jb51PyDemo\src\Demo\test.py", line 4, in tell_info
    print("%s have money %s" %(name,money))
NameError: global name 'money' is not defined

改成如下代碼:

# -*- coding:utf-8 -*-
#! python2
def foo():
  money = 100
  name = "bill"
  def tell_info():
    print("%s have money %s" %(name,money))
  return tell_info()
foo()

則輸出:

bill have money 100

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python函數(shù)使用技巧總結》、《Python數(shù)學運算技巧總結》、《Python數(shù)據(jù)結構與算法教程》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程

希望本文所述對大家Python程序設計有所幫助。

相關文章

  • Python獲取瀏覽器Cookies的方法總結

    Python獲取瀏覽器Cookies的方法總結

    在現(xiàn)代網絡應用和開發(fā)中,使用Cookies是一種常見的方式,它們用于存儲用戶信息、會話狀態(tài)等,本文為大家整理了多種Python獲取瀏覽器Cookies的方法,希望對大家有所幫助
    2023-12-12
  • Tensorflow實現(xiàn)卷積神經網絡的詳細代碼

    Tensorflow實現(xiàn)卷積神經網絡的詳細代碼

    這篇文章主要為大家詳細介紹了Tensorflow實現(xiàn)卷積神經網絡的詳細代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • django中的數(shù)據(jù)庫遷移的實現(xiàn)

    django中的數(shù)據(jù)庫遷移的實現(xiàn)

    這篇文章主要介紹了django中的數(shù)據(jù)庫遷移的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • Python程序員面試題 你必須提前準備!

    Python程序員面試題 你必須提前準備!

    Python程序員面試,這些問題你必須提前準備!供廣大Python程序員參考,預祝大家順利通過面試。
    2018-01-01
  • python 實現(xiàn)快速生成連續(xù)、隨機字母列表

    python 實現(xiàn)快速生成連續(xù)、隨機字母列表

    今天小編就為大家分享一篇python 實現(xiàn)快速生成連續(xù)、隨機字母列表,具有很好的價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 基于Python打造一個全能文本處理工具

    基于Python打造一個全能文本處理工具

    這篇文章主要介紹了一個基于Python+Tkinter開發(fā)的全功能本地化文本處理工具,它不僅具備基礎的格式轉換功能,更集成了中文特色處理等實用功能,有需要的可以了解下
    2025-04-04
  • 使用pandas實現(xiàn)csv/excel sheet互相轉換的方法

    使用pandas實現(xiàn)csv/excel sheet互相轉換的方法

    今天小編就為大家分享一篇使用pandas實現(xiàn)csv/excel sheet互相轉換的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • python圖像和辦公文檔處理總結

    python圖像和辦公文檔處理總結

    在本文里我們給大家整理了關于python圖像和辦公文檔處理的相關知識點內容以及重點內容總結,有需要的朋友們跟著學習下。
    2019-05-05
  • 在pandas中遍歷DataFrame行的實現(xiàn)方法

    在pandas中遍歷DataFrame行的實現(xiàn)方法

    這篇文章主要介紹了在pandas中遍歷DataFrame行的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • Python多線程編程(五):死鎖的形成

    Python多線程編程(五):死鎖的形成

    這篇文章主要介紹了Python多線程編程(五):死鎖的形成,本文講解了死鎖的概念、死鎖示例、避免死鎖的方法等內容,需要的朋友可以參考下
    2015-04-04

最新評論

南陵县| 马鞍山市| 阳泉市| 珠海市| 和静县| 达日县| 自贡市| 姚安县| 行唐县| 赤水市| 清徐县| 玉山县| 区。| 延寿县| 咸丰县| 屏东县| 柳州市| 丁青县| 衡南县| 织金县| 治县。| 商河县| 安吉县| 海门市| 开原市| 静海县| 尚志市| 曲松县| 定襄县| 巫溪县| 特克斯县| 江川县| 牙克石市| 蓬溪县| 昂仁县| 安新县| 环江| 赤城县| 前郭尔| 隆林| 常山县|