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

python中g(shù)lobal與nonlocal比較

 更新時(shí)間:2014年11月21日 11:12:02   投稿:junjie  
這篇文章主要介紹了python中g(shù)lobal與nonlocal比較,global關(guān)鍵字用來(lái)在函數(shù)或其他局部作用域中使用全局變量,nonlocal關(guān)鍵字用來(lái)在函數(shù)或其他作用域中使用外層(非全局)變量,需要的朋友可以參考下

python引用變量的順序: 當(dāng)前作用域局部變量->外層作用域變量->當(dāng)前模塊中的全局變量->python內(nèi)置變量

一、global

global關(guān)鍵字用來(lái)在函數(shù)或其他局部作用域中使用全局變量。但是如果不修改全局變量也可以不使用global關(guān)鍵字。

復(fù)制代碼 代碼如下:

gcount = 0

def global_test():
    print (gcount)
   
def global_counter():
    global gcount
    gcount +=1
    return gcount
   
def global_counter_test():
    print(global_counter())
    print(global_counter())
    print(global_counter())

二、nonlocal

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

復(fù)制代碼 代碼如下:

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())

也可以使用generator來(lái)實(shí)現(xiàn)類(lèi)似的counter。如下:

復(fù)制代碼 代碼如下:

def counter_generator():
    count = 0
    while True:
        count += 1
        yield count
   
def counter_generator_test():
  # below is for python 3.x and works well
  citer = counter_generator().__iter__()
  i = 0
  while(i < 3) :
    print(citer.__next__())
    i+=1
 
def counter_generator_test2(): 
  #below code don't work
  #because next() function still suspends and cannot exit
  #it seems the iterator is generated every time.
  j = 0
  for iter in counter_generator():
    while(j < 3) :
      print(iter)
      j+=1

相關(guān)文章

  • django ManyToManyField多對(duì)多關(guān)系的實(shí)例詳解

    django ManyToManyField多對(duì)多關(guān)系的實(shí)例詳解

    今天小編就為大家分享一篇django ManyToManyField多對(duì)多關(guān)系的實(shí)例詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-08-08
  • Python Numpy庫(kù)安裝與基本操作示例

    Python Numpy庫(kù)安裝與基本操作示例

    這篇文章主要介紹了Python Numpy庫(kù)安裝與基本操作,簡(jiǎn)單介紹了Numpy庫(kù)的基本功能、并結(jié)合實(shí)例形式分析了基于Numpy庫(kù)的數(shù)組與矩陣相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01
  • Python中的hypot()方法使用簡(jiǎn)介

    Python中的hypot()方法使用簡(jiǎn)介

    這篇文章主要介紹了Python中的hypot()方法使用簡(jiǎn)介,是Python入門(mén)所需掌握的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • 基于OpenMV的圖像識(shí)別之?dāng)?shù)字識(shí)別功能

    基于OpenMV的圖像識(shí)別之?dāng)?shù)字識(shí)別功能

    OpenMV是一個(gè)開(kāi)源,低成本,功能強(qiáng)大的機(jī)器視覺(jué)模塊。以STM32F427CPU為核心,集成了OV7725攝像頭芯片,在小巧的硬件模塊上,用C語(yǔ)言高效地實(shí)現(xiàn)了核心機(jī)器視覺(jué)算法,提供Python編程接口,對(duì)OpenMV的圖像識(shí)別之?dāng)?shù)字識(shí)別相關(guān)知識(shí)感興趣的朋友一起看看吧
    2021-11-11
  • 對(duì)pandas通過(guò)索引提取dataframe的行方法詳解

    對(duì)pandas通過(guò)索引提取dataframe的行方法詳解

    今天小編就為大家分享一篇對(duì)pandas通過(guò)索引提取dataframe的行方法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-02-02
  • Python如何管理多個(gè)PostgreSQL數(shù)據(jù)庫(kù)的連接

    Python如何管理多個(gè)PostgreSQL數(shù)據(jù)庫(kù)的連接

    這篇文章主要為大家詳細(xì)介紹了Python如何通過(guò)讀取配置文件中的PostgreSQL服務(wù)信息,連接到相應(yīng)的PostgreSQL數(shù)據(jù)庫(kù),感興趣的小伙伴可以了解下
    2024-11-11
  • django?python?獲取當(dāng)天日期的方法

    django?python?獲取當(dāng)天日期的方法

    這篇文章主要介紹了django?python?獲取當(dāng)天日期,在Python中,你可以使用datetime模塊來(lái)獲取當(dāng)前日期,本文結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • Python中__init__方法使用的深度解析

    Python中__init__方法使用的深度解析

    在Python的面向?qū)ο缶幊蹋∣OP)體系中,__init__方法如同建造房屋時(shí)的"奠基儀式"——它定義了對(duì)象誕生時(shí)的初始狀態(tài),下面我們就來(lái)深入了解下__init__方法吧
    2025-04-04
  • Python 解析XML文件

    Python 解析XML文件

    google一篇關(guān)于Python解析XML文件的博文不過(guò)XML文件出錯(cuò),整理如下。
    2009-04-04
  • Python 對(duì)象序列化與反序列化之pickle json詳細(xì)解析

    Python 對(duì)象序列化與反序列化之pickle json詳細(xì)解析

    我們知道在Python中,一切皆為對(duì)象,實(shí)例是對(duì)象,類(lèi)是對(duì)象,元類(lèi)也是對(duì)象。本文正是要聊聊如何將這些對(duì)象有效地保存起來(lái),以供后續(xù)使用
    2021-09-09

最新評(píng)論

沭阳县| 封开县| 丰原市| 德格县| 青铜峡市| 长阳| 浮山县| 资兴市| 东乌珠穆沁旗| 许昌市| 北流市| 白山市| 出国| 东宁县| 攀枝花市| 华阴市| 大宁县| 海南省| 宣汉县| 高密市| 广水市| 湄潭县| 邻水| 蓬安县| 新兴县| 舟曲县| 定日县| 达尔| 四子王旗| 林周县| 新郑市| 宁化县| 依兰县| 福建省| 府谷县| 肇东市| 德昌县| 六安市| 什邡市| 贺州市| 锦屏县|