Python 3 x變數作用域

2021-10-07 18:15:05 字數 1637 閱讀 1195

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...