python 全局變量

1. 函數是能夠訪問所有變量的python

a = 9527函數

def modify() :spa

print autf-8

if __name__ == ‘__main__’ :變量

modify()coding

執行結果,就是打印出 9527引用

2. 若是在函數裏 對全局變量進行修改,就會報錯di

#!/usr/bin/env pythonco

# -*- coding: utf-8 -*-錯誤

a = 9527

def modify() :

a += 1

print a

if __name__ == ‘__main__’ :

modify()

報錯:

a += 1

UnboundLocalError: local variable ‘a’ referenced before assignment

3) 在函數裏 能夠用 global 來聲明這個變量,避免報錯

a = 9527

def modify() :

global a

a += 1

print a

if __name__ == ‘__main__’ :

modify()

打印出

9528

請參考:

http://www.krisd.org/?p=645

在函數內進行賦值操做時,會產生一個局部變量a,而等式右邊又引用了這個未初始化的變量,所以產生了UnboundLocalError錯誤,若是要引用外部的變量,必須利用global關鍵字進行顯式的聲明

相關文章
相關標籤/搜索