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

Python作用域用法實例詳解

 更新時間:2016年03月15日 11:37:04   作者:小談博客  
這篇文章主要介紹了Python作用域用法,結(jié)合實例形式詳細(xì)分析了Python作用域概念,用法與相關(guān)函數(shù)的使用技巧,需要的朋友可以參考下

本文實例分析了Python作用域用法。分享給大家供大家參考,具體如下:

每一個編程語言都有變量的作用域的概念,Python也不例外,以下是Python作用域的代碼演示:

def scope_test():
  def do_local():
    spam = "local spam"
  def do_nonlocal():
    nonlocal spam
    spam = "nonlocal spam"
  def do_global():
    global spam
    spam = "global spam"
  spam = "test spam"
  do_local()
  print("After local assignment:", spam)
  do_nonlocal()
  print("After nonlocal assignment:", spam)
  do_global()
  print("After global assignment:", spam)
scope_test()
print("In global scope:", spam)

程序的輸出結(jié)果:

After local assignment: test spam
After nonlocal assignment: nonlocal spam
After global assignment: nonlocal spam
In global scope: global spam

注意: local 賦值語句是無法改變 scope_test 的 spam 綁定。 nonlocal 賦值語句改變了 scope_test 的 spam 綁定,并且 global 賦值語句從模塊級改變了 spam 綁定。

其中,nonlocal是Python 3新增的關(guān)鍵字。

你也可以看到在 global 賦值語句之前對 spam 是沒有預(yù)先綁定的。

小結(jié):

遇到在程序中訪問全局變量并且要修改全局變量的值的情況可以使用:global關(guān)鍵字,在函數(shù)中聲明此變量是全局變量

nonlocal關(guān)鍵字用來在函數(shù)或其他作用域中使用外層(非全局)變量。

global關(guān)鍵字很好理解,其他語言大體也如此。這里再舉一個nonlocal的例子:

def make_counter():
  count = 0
  def counter():
    nonlocal count
    count += 1
    return count
  return counter
def make_counter_test():
 mc = make_counter()
 print(mc())
 print(mc())
 print(mc())

運行結(jié)果:

1
2
3

轉(zhuǎn)自:小談博客 http://www.tantengvip.com/2015/05/python-scope/

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

相關(guān)文章

  • Python format補0的實現(xiàn)方法

    Python format補0的實現(xiàn)方法

    對于一些數(shù)字的處理,我們可能需要讓它們滿足一定格式的要求,本文主要介紹了Python format補0的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-07-07
  • 詳解python statistics模塊及函數(shù)用法

    詳解python statistics模塊及函數(shù)用法

    本節(jié)介紹 Python 中的另一個常用模塊 —— statistics模塊,該模塊提供了用于計算數(shù)字?jǐn)?shù)據(jù)的數(shù)理統(tǒng)計量的函數(shù)。這篇文章重點給大家介紹python statistics 模塊的一些用法,感興趣的朋友跟隨小編一起看看吧
    2019-10-10
  • 利用python對Excel中的特定數(shù)據(jù)提取并寫入新表的方法

    利用python對Excel中的特定數(shù)據(jù)提取并寫入新表的方法

    今天小編就為大家分享一篇利用python對Excel中的特定數(shù)據(jù)提取并寫入新表的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • 如何基于Python + requests實現(xiàn)發(fā)送HTTP請求

    如何基于Python + requests實現(xiàn)發(fā)送HTTP請求

    這篇文章主要介紹了如何基于Python + requests實現(xiàn)發(fā)送HTTP請求,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • Pycharm無法使用已經(jīng)安裝Selenium的解決方法

    Pycharm無法使用已經(jīng)安裝Selenium的解決方法

    今天小編就為大家分享一篇Pycharm無法使用已經(jīng)安裝Selenium的解決方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • 實例講解python中的序列化知識點

    實例講解python中的序列化知識點

    本篇文章通過代碼實例給大家詳細(xì)分享了關(guān)于python中的序列化知識點內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2018-10-10
  • 看看如何用Python繪制小米新版天價logo

    看看如何用Python繪制小米新版天價logo

    這篇文章主要介紹了看看如何用Python繪制小米新版天價logo,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下
    2021-04-04
  • pytorch如何凍結(jié)某層參數(shù)的實現(xiàn)

    pytorch如何凍結(jié)某層參數(shù)的實現(xiàn)

    這篇文章主要介紹了pytorch如何凍結(jié)某層參數(shù)的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • Django Form 實時從數(shù)據(jù)庫中獲取數(shù)據(jù)的操作方法

    Django Form 實時從數(shù)據(jù)庫中獲取數(shù)據(jù)的操作方法

    這篇文章主要介紹了Django Form 實時從數(shù)據(jù)庫中獲取數(shù)據(jù)的相關(guān)知識,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值 ,需要的朋友可以參考下
    2019-07-07
  • PHP webshell檢查工具 python實現(xiàn)代碼

    PHP webshell檢查工具 python實現(xiàn)代碼

    Web安全應(yīng)急響應(yīng)中,不免要檢查下服務(wù)器上是否被上傳了webshell,手工檢查比較慢,就寫了個腳本來檢查了。Windows平臺下已經(jīng)有了lake2寫的雷克圖的了,一般的檢查也夠用了,寫了個Linux下面的,用python寫的。
    2009-09-09

最新評論

遂溪县| 乌兰县| 怀柔区| 青州市| 西青区| 科技| 怀宁县| 井冈山市| 东明县| 广宗县| 农安县| 会昌县| 宜宾市| 美姑县| 于田县| 威宁| 九台市| 新野县| 郸城县| 广东省| 崇阳县| 靖安县| 苍南县| 来凤县| 明水县| 高雄市| 南和县| 丹寨县| 济宁市| 大埔县| 五河县| 民和| 崇左市| 杨浦区| 辛集市| 乐安县| 洛川县| 海城市| 英德市| 崇信县| 湖州市|