Python函式知識

2021-10-10 08:38:25 字數 1828 閱讀 6378

函式就是被封裝起來的具有特定功能的**塊(語句塊),可以被重複執行。

函式兩個重要概念:定義和呼叫

形參:接收資料(外部)區域性變數,相當於乙個變數名。

實參:外部資料,用於給形參賦值

返回值:將函式內部的資料複製到函式外部(函式一旦執行到return函式結束)

變數作用域指的是變數起作用的範圍

區域性變數:函式內部定義變數。

只能在當前函式內部被呼叫(優先使用區域性變數)

全域性變數:在函式以外定義的變數或在函式內部使用global宣告的變數

在函式使用global關鍵字宣告的全域性變數在函式內部修改

它的值可以在整個函式中都可以獲取到

位置引數
實參的賦值是按照形參定義的順序傳遞的

命名傳參
執行函式時,形參名=值(實參)方法賦值

使用命名傳參可以不按照形參定義的順序賦值

檢視函式幫助資訊help(函式名)

預設值引數
定義函式時,給形參設定預設值

可變長度引數
在引數名前加*

def

func

(*args)

:print

(args)

func(1,

2,3)

結果如下:

(1,2,3)
形參會將接收到的所有引數放置在乙個元組中

可變長命名引數
**形參

使用字典型別接受所有的引數

注意:typeerror在函式執行時,定義的形參沒有實參就會報錯

print((

lambda name:

"hello"

+name)

("小明"

))

結果為:

hello 小明
三目運算

是否成年了

x=0s=

100if x!=

0else

1print

(s)#1

print((

lambda age:

"成年"

if age>=

18else

"未成年")(

16))

棧:先入後出結構

最後執行的函式的返回值是最先得到的,第乙個執行的函式的值是最後得到的

gen1 =(2

** i for i in

range(1

,65))

print

(gen1)

#兩種輸出都可以

print

(list

(gen1)

)#最後一種是將生成器物件強制型別轉換為列表

def

feibo

(n):

a,b =0,

1while aa,b = b,a+b

for i in feibo(

1000):

print

(i)yield a#返回資料不會結束函式

python函式知識 Python 函式知識

背景 在學習函式之前,一直遵循 面向過程程式設計,即 根據業務邏輯從上到下實現功能,其往往用一長段 來實現指定功能,開發過程中最常見的操作就是貼上複製,也就是將之前實現的 塊複製到現需功能處,如下 while true if cpu利用率 90 傳送郵件提醒 連線郵箱伺服器 傳送郵件 關閉連線 if...

Python函式相關知識

定義乙個由自己想要功能的函式,以下是簡單的規則 任何傳入引數和自變數必須放在圓括號中間。圓括號之間可以用於定義引數。函式的第一行語句可以選擇性地使用文件字串 用於存放函式說明。函式內容以冒號起始,並且縮排。return 表示式 結束函式,選擇性地返回乙個值給呼叫方。不帶表示式的return相當於返回...

Python 函式知識彙總

是什麼 函式是一段具有特定功能 可重用的語句組,是一種功能的抽象。作用 降低程式設計難度和 復用 怎麼用 def 函式名 引數 0個或多個 函式體 return 返回值 說明 函式定義時,所指定的引數是一種佔位符 函式定義後,不經呼叫,不會被執行 函式定義時,引數是輸入 函式體是處理 結果是輸出 i...