全局變量和局部變量的定義


1、局部變量:

定義在函數內部的變量就是局部變量,只能在其被聲明的函數內部被訪問。這樣的變量只在函數運行時存在,一旦退出函數,這些局部變量就都被銷毀。所有在函數內部聲明的變量名稱都將被加入作用域中。

示例如下:

def printInfo(arg1, arg2) :
  sum = arg1 + arg2
  print "函數中的sum = ",sum

#函數體外也定義了一個sum變量
printInfo(5,6)
sum = 1
print "函數外的sum = ",sum

運行結果如下:

函數中的sum = 11
函數外的sum = 1

函數中的sum變量就是局部變量,只能在所在的函數中訪問,即使在外面改變了sum變量的值,也不會影響函數中的sum變量的值。

2、全局變量:

全局變量是在函數外定義的,可以在整個程序范圍內訪問,但是必須在所要訪問的函數中使用關鍵詞 global 聲明函數外的變量為全局變量,這樣訪問的才是在函數外定義的全局變量。 

示例代碼:

def printInfo(y) :
  global x
  sum = x + y
  print "sum = ",sum
x = 10
printInfo(5)

運行結果:

sum = 15

一旦變量被定義為全局變量后,在程序任何地方都可以訪問,也可以修改。所以我們不建議過多的使用全局變量(非必要不使用),因為這樣可能會導致全局變量的不可預知性,並且全局變量也降低了函數或模塊之間的通用性,同時也降低了代碼的可讀性,別人有可能不知道這個調用的是哪的變量。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM