python函式定義及作用域

2022-08-11 16:15:19 字數 948 閱讀 8154

函式

引數**:

引數解構:引數解構發生在函式呼叫時,可變引數發生函式定義的時候。引數解構分為兩種形式,一種是必備引數解構,另一種是不定長引數解構。

def

func(a,b,c):

print

(a,b,c)

lst = [1,2,3]

func(*lst)

​1 2 3

def

func(a,b,c):

print

(a,b,c)

lst =

func(**lst)

​2 3 6

函式作用域

全域性變數:存活在整個程式

不可變資料區域性變數改變不會影響到全域性變數

a = 'd'

#全域性變數

deffunc():

a = 'l'

print('內'

,a)func()

print('外'

,a)​

內 l外 d

可變資料區域性變數改變會影響到全域性變數,也可以說可變資料就是全域性的。

a = [1,2]

deffunc():

a[0] = 'l'

print

(a)func()

print

(a)​['

l', 2]['

l', 2]

區域性變數與全域性變數只是變數名的位址不同,值位址相同

a = 1

deffunction():

a = 1

print

(id(a))

function()

print

(id(a))

1800823008

1800823008

python 函式巢狀及作用域

函式可以巢狀嗎?當然可以 我們可以看到,外部函式outer func 的函式體中巢狀了乙個函式inner func 並且outer func 體中 還呼叫了內部函式inner func 所以每當呼叫outer func 的時候,都會呼叫一次inner func 我 們來看一下列印結果 我們可以看到,...

函式作用域及作用域鏈

變數作用域 全域性作用域 在j ascript中全域性變數的作用域比較簡單,它的作用域是全域性的,在 的任何地方都是有定義的。然而函式的引數和區域性變數只在函式體內有定義 1.函式外面定義的變數擁有全域性作用域 var n 2 function fn console.log fn 1 console...

譚子python學習筆記 函式定義及作用域

作用域法則 函式是為了 最大程度的重用和最小化 冗餘而提供的最基本的程式結構 最大化的 重用和最小化的 冗餘 流程分解 語句例子 備註calls func spam eggs 呼叫函式 defdef func a,b 1,c 定義return return a b c 0 返回值global def...