case2:區域性變數與全域性變數同名
x=
"i am global var"
deffun()
: x=
100print
(x)fun(
)print
(x)**
****
****
*output**
****
****
**100
i am global var
>>
>
即便同名,函式內訪問的變數就是函式內定義的區域性var,函式外訪問的就是全域性var。跟其他語言一致,同名區域性變數會遮蔽全域性變數。
如果要在函式內fun()定義全域性var? 在函式體內宣告為全域性var
case3:
x="i am global var"
deffun()
:global x
x=100
print
(x)fun(
)print
(x)**
****
****output**
****
100100
>>
>
>>
>
此時全域性var x值被更新,在函式內部也可更改全域性變數的值。
如果直接在函式內宣告全域性變數global var,要在函式外訪問該變數,前提是必須先執行一次函式呼叫,看下面case:
def
fun():
global x
x="i am global var"
print
(x)print
(x)fun(
)print
(x)**
****
*output**
****
*******
traceback (most recent call last)
: file "d:/program files/python36/var.py"
, line 6,in
print
(x)nameerror: name 'x'
isnot defined
>>
>
deffun()
:global x
x="i am global var"
print
(x)fun(
)#x = 100
print
(x)**
****
****output**
****
****
**i am global var
i am global var
>>
>
deffun()
:global x
x="i am global var"
print
(x)fun(
)x =
100print
(x)**
****
*output**
*******
i am global var
100>>
>
Python3 變數作用域
變數的作用域 是指乙個變數所產生作用的範圍,在哪乙個範圍內能被直譯器識別。print name 直接輸出的話會出現這樣的乙個錯誤 nameerror name name is not defined 變數的作用域 全域性變數和區域性變數 一般宣告在函式外部的變數,被稱為全域性變數,作用範圍是整個.p...
Python3 x編碼問題
1.記事本的ansi編碼為系統本地編碼,我的是gbk open 函式的encoding引數預設是本地編碼,也就是gbk,所以直接讀取ansi編碼的記事本檔案是木有問題的。怎麼檢視系統本地編碼?在cmd下輸入 chcp 從下表可以看出,936對應gbk編碼 下表列出了所有支援的 頁及其國家 地區 或者...
Python 內建函式(Python 3 x)
1 type obj 返回變數型別 2 isinstance object,class or type or tuple 測試物件是否為指定型別的例項 4 range start,end step 返回乙個 start,end 內的 range 物件,start 預設為 0,step 預設為 1 5...