簡單了解python變數的作用域

2022-10-04 16:39:16 字數 1247 閱讀 4863

1.效果圖:

2.**

# 作用域 是 物件生效的區域(物件能被使用的區域)

# 全域性作用域在任意位置可生效

# 區域性作用域在函式內生效

c = # 全域性變數

def fn():

d = 10 # a定義在了函式內部,所以他的作用域就是函式內部,函式外部無法訪問

print('函式內部:','c =',c)

print('函式內部:','d =',d)

fn()

prinbspazptkt('函式外部獲取:','c =',c)

print('函式外部獲取:','d =',d)

# 在python中一共有兩種作用域

# 全域性作用www.cppcns.com域

# - 全域性作用域在程式執行時建立,在程式執行結束時銷毀

# - 所有函式以外的區域都是全域性作用域

# - 在全域性作用域中定義的變數,都屬於全域性變數,全域性變數可以在程式的任意位置被訪問

# # 函式作用域

# - 函式作用域在函式呼叫時建立,在呼叫結束時銷毀

# - 函式每呼叫一次就會產生乙個新的函式作用域

# - 在函式作用域中定義的變數,都是區域性變數,它只能在函式內部被訪問

# # 變數的查詢

# - 當我們使用變數時,會優先在當前作用域中尋找該變數,如果有則使用,

# 如果沒有則繼續去上一級作用域中尋找,如果有則使用,

# 如果依然沒有則繼續去上一級作用域中尋找,以此類推

# 直到找到全域性作用域,依然沒有找到,則會丟擲異常

# nameerror: name 'a' is not defined

3. 在函式內修改全域性變數 使用global關鍵字

效果圖:

**:a = 20

def fn3():

# a = 10 # 在函式中為變數賦值時,預設都是為區域性變數賦值

# 如果希望在函式內部修改全域性變數,則需要使用global關鍵字,來宣告變數

global a # 宣告在函式內部的使用a是全域性變數,此時再去修改a時,就是在修改全域性的a

a = 10 # 修改全域性變數

print('函式內部:','a =',a)

fn3()

print('函式外部:','a =',a)

本文標題: 簡單了解python變數的作用域

本文位址: /jiaoben/python/267125.html

深入了解Python 變數作用域

特點 python的作用域是靜態的,在源 中變數名被賦值的位置決定了該變數能被訪問的範圍。即python變數的作用域由變數所在源 中的位置決定。python中並不是所有的語句塊中都會產生作用域。只有當變數在module 模組 class 類 def 函式 中定義的時候,才會有作用域的概念。1.函式內...

簡單了解ETCD的作用

一.定義 etcd是乙個鍵值 key value 儲存倉庫,相當於分布式儲存資料庫,用於共享配置和服務發現。二.主要特點 1.簡單 基於http json的api讓你用curl就可以輕鬆使用。2.安全 可選ssl客戶認證機制。3.快速 每個例項每秒支援一千次寫操作。4.可信 使用raft演算法充分實...

Python變數的作用域

python程式有各種各樣的命名空間,它指的是在該程式段內乙個特定的名稱是獨一無二的,它和其它同名的命名空間是無關的。在python中每乙個函式都有自己的命名空間,如果在函式體外部,也就是主程式範圍內定義乙個變數a,然後在函式體內也定義乙個變數a,那麼兩者指帶的是不同的變數。但是要知道的是場景總是多...