自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Python全局變量的隱藏“竅門”

開發(fā) 后端
Python全局變量的程序介紹,是相關(guān)人士更好了解其內(nèi)在規(guī)律,以及Python全局變量的運(yùn)行結(jié)果的詳細(xì)介紹,以及如何訪問(wèn)Python全局變量。

Python全局變量是不符合參數(shù)傳遞的相關(guān)規(guī)律,所以很多人不愿意經(jīng)常使用,除非在定義常量的情況下。一下要討論的是關(guān)于全局變量的相關(guān)問(wèn)題,發(fā)現(xiàn)其中隱藏的竅門。希望大家通過(guò)這篇文章有所收獲。

程序大致是這樣的:

  1. CONSTANT = 0 
  2.  
  3. def modifyConstant() :  
  4.         print CONSTANT  
  5.         CONSTANT += 1  
  6.         return  
  7.  
  8. if __name__ == '__main__' :  
  9.         modifyConstant()  
  10.         print CONSTANT  
  11.  

運(yùn)行結(jié)果如下:
UnboundLocalError: local variable 'CONSTANT' referenced before assignment看來(lái),Python全局變量在函數(shù)modifyConstant中邊成了局部變量,似乎全局變量沒(méi)有生效?
做點(diǎn)修改:

  1. CONSTANT = 0 
  2.  
  3. def modifyConstant() :  
  4.         print CONSTANT  
  5.         #CONSTANT += 1  
  6.         return  
  7.  
  8. if __name__ == '__main__' :  
  9.         modifyConstant()  
  10.         print CONSTANT  
  11.  

運(yùn)行正常,看來(lái)函數(shù)內(nèi)部是可以訪問(wèn)全局變量的。
所以,問(wèn)題就在于,因?yàn)樵诤瘮?shù)內(nèi)部修改了變量CONSTANT,Python認(rèn)為CONSTANT是局部變量,而print CONSTANT又在CONSTANT += 1之前,所以當(dāng)然會(huì)發(fā)生這種錯(cuò)誤。那么,應(yīng)該如何在函數(shù)內(nèi)部訪問(wèn)并修改Python全局變量呢?應(yīng)該使用關(guān)鍵字global來(lái)修飾變量(有點(diǎn)像PHP):

  1. CONSTANT = 0 
  2.  
  3. def modifyConstant() :  
  4.         global CONSTANT  
  5.         print CONSTANT  
  6.         CONSTANT += 1  
  7.         return  
  8.  
  9. if __name__ == '__main__' :  
  10.         modifyConstant()  
  11.         print CONSTANT  
  12.  

如果你對(duì)其也有相關(guān)不解的亦或時(shí),不妨瀏覽一下上述解答方案,是你對(duì)其有更好的了解,在實(shí)際應(yīng)用中能夠暢通應(yīng)用。

【編輯推薦】

  1. Python循環(huán)語(yǔ)句使用中異?,F(xiàn)象的處理
  2. Python循環(huán)語(yǔ)句中whlie和for的應(yīng)用
  3. Python編碼對(duì)解決難解編碼的方法及如何巧妙應(yīng)用
  4. python簡(jiǎn)單應(yīng)用中簡(jiǎn)單程序的編寫經(jīng)驗(yàn)分享
  5. Python String類型基本應(yīng)用情況分析
責(zé)任編輯:佚名 來(lái)源: 移動(dòng)LABS
相關(guān)推薦

2010-02-01 14:28:37

Python全局變量

2013-07-17 16:16:06

Android全局變量定義全局變量Application

2024-05-29 08:49:22

Python全局變量局部變量

2010-11-12 10:08:55

SQL Server全

2013-07-25 15:15:26

iOS開發(fā)學(xué)習(xí)iOS全局變量

2009-09-24 09:28:00

Scala講座全局變量scala

2009-11-06 13:28:19

Javascript框

2013-07-22 14:07:47

2015-01-07 14:41:32

Android全局變量局部變量

2023-09-24 23:40:54

Python變量

2017-02-08 12:28:37

Android變量總結(jié)

2009-12-09 17:07:08

PHP unset全局

2014-06-23 10:25:12

2010-09-08 17:25:17

SQL全局變量

2009-12-04 13:14:19

PHP Global變

2010-03-15 10:24:20

Python函數(shù)變量

2009-12-04 13:31:21

PHP全局變量不能生效

2021-02-26 13:42:01

函數(shù)全局變量

2024-05-27 09:18:18

2022-04-12 11:38:06

C語(yǔ)言全局變量
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)