python基礎 操作函式4

2022-06-26 23:24:18 字數 2266 閱讀 5468

一、函式的巢狀呼叫:

在呼叫乙個函式的時候,其內部的**又呼叫其它的函式

二、函式的巢狀定義:

在乙個函式的內部又定義了另乙個函式

三、命名空間與作用域

什麼是命名空間:是記憶體開闢存放 變數名和值的位址繫結關係 的地方。key-value 形式。

x=1;幹了什麼事情?

1.向記憶體申請一塊空間,將值1放進去。

2.將值1的記憶體位址與x變數名建立繫結關係

3.這個繫結關係和x變數名會存放在命名空間

要取得值必須通過名字才能找,而名字又在命名空間中存放,所以在取值時首先是去命名空間中找到名字,自然就拿到值的記憶體位址

四、命名空間分三種:

1.內建命名空間:存放python直譯器自帶的名字

生命週期:在直譯器啟動時產生,在直譯器關閉時**

作用範圍:

2.全域性命名空間:存放

生命週期:在執行py檔案生效,py檔案執行結束被**

作用範圍:

3.區域性命名空間:存放的是函式內部定義的名稱

生命週期:在呼叫函式時臨時生效,函式結束後,立即被**

作業範圍:

載入順序:內建命名空間-》全域性命名空間-》區域性命名空間

查詢順序:當前位置命名空間-》上級命名空間-》內建命名空間

五、作用域

域指的是範圍,作用域指的是作用範圍

分為:全域性作用範圍:包含內建命名空間與全域性命名空間。

特點:全域性有效,全域性存活。

區域性作用範圍:包含區域性命名空間的名字

特點:區域性有效,臨時存活

globals:返回的是全域性作用域中的名字

dir(globals()['__builtins__']):返回的是全域性作用域內建的名字

locals:返回的是區域性作用域的名字

注意:被呼叫才會產生命名空間

函式的作用域關係是在函式定義階段決定的,與函式的呼叫位置無關

即在呼叫函式時,一定要在定義函式的位置尋找作用域關係

情況2:

情況3:

情況4:

六、global關鍵字,nonlocal關鍵字

global關鍵字的作用:在區域性宣告變數是來自於全域性的

nonlocal關鍵字的作用:在區域性宣告變數是來自於函式區域性的(不能出函式

注意:(不能出函式

PYTHON基礎操作4

本操作各兩種方法對字串進行求差 求和 和求補 編寫程式要求使用者輸入兩個字串,然後輸出 同時在兩個字串 現的字元 在乙個字串 現而沒有在另乙個字串 現的字元 兩個字串中都沒有出現的字元。這裡需要使用set函式把字串轉換為集合。import string str1 input 請輸入第乙個字串 n s...

python基礎之函式 4

什麼是函式?function 英文 函式,功能 函式就是乙個具有特定功能的語法結構。作用 提高 的復用率,提高開發效率,減少後期的維護成本 基本結構 def 函式名 實現函式功能的 實現函式功能的 實現函式功能的 特徵 1.函式不呼叫不會執行 2.函式可以呼叫n次不受次數限制 函式名的定義 1.推薦...

python學習筆記 4 函式基礎

語法格式 def 函式名 函式封裝的 通過函式名 即可完成對函式的呼叫。注意,函式呼叫不能放在函式定義的前面。舉個栗子 定義函式 num1 num2,括號中的num1和num2為函式中定義的引數 defnum1 num2 num1,num2 result num1 num2 print result...