python3學習日記 函式

2021-10-01 22:41:11 字數 2083 閱讀 2932

函式是組織好的,可重複使用的,用來實現單一,或相關聯功能的**段。函式能提高應用的模組性,和**的重複利用率。

# 定義乙個函式

defsay_hi

(name)

:print

('hi~'

+name)

;# print是python的乙個內建函式

函式的引數
必需引數:必需引數須以正確的順序傳入函式。呼叫時的數量必須和宣告時的一樣。

關鍵字引數:關鍵字引數和函式呼叫關係緊密,函式呼叫使用關鍵字引數來確定傳入的引數值。使用關鍵字引數允許函式呼叫時引數的順序與宣告時不一致,因為 python 直譯器能夠用引數名匹配引數值。

預設引數: 呼叫函式時,如果沒有傳遞引數,則會使用預設引數。

# 必需引數

defsay_hi

(name)

:print

('hi~'

+name)

;# name是必須傳的引數

say_hi(

'tom'

)# 結果 hi~tom

# 關鍵字引數

defsay_hi

(name)

:print

('hi~'

+name)

;say_hi(name=

'tom'

)# 結果 hi~tom

# 預設引數

defsay_hi

(name=

'tom'):

print

('hi~'

+name)

;# 如果不傳引數,則使用預設引數

say_hi(

)# 結果 hi~tom

# 不定長引數

defsay_hi

(name,*keys)

:print

(name)

print

(keys)

say_hi(

'tom',1

,2,3

)'''

結果是tom

(1, 2, 3) 第二個可變引數會以元組的形式傳遞進來

'''

匿名函式
python 使用lambda來建立匿名函式。

所謂匿名,意即不再使用 def 語句這樣標準的形式定義乙個函式。

# lambda關鍵字的使用

sum=

lambda arg1, arg2: arg1 + arg2

sum(1,

2)# 結果返回為3

lambda關鍵字的使用非常的靈活,它也是函式式程式設計的核心所在。在python的一些內建函式map/filter等都可以傳遞匿名函式為引數,從而達到預期效果。靈活的使用可以事半功倍~

return語句和序列解包

return [表示式] 語句用於退出函式,選擇性地向呼叫方返回乙個表示式。不帶引數值的return語句返回none。

序列解包:當return返回多個結果時,會以元組的形式返回,在接受返回值時可以設定多個變數來接收。

# 之前的例子都沒有示範如何返回數值,以下例項演示了 return 語句的用法:

defsum

( arg1, arg2 )

:# 返回2個引數的和."

total = arg1 + arg2

print

("函式內 : "

, total)

return total

print

(sum(1

,2))

# 列印返回的結果3

# 序列解包

def(name,

*keys)

:return name,keys

'蘋果'

,'香蕉'

,'橘子'

)# a的結果是'蘋果' b的結果是('香蕉','橘子')

python3安裝日記

sudo yum install y libffi devel readline devel 解決python上下左右光符移動 cd python目錄新增配置 sudo configure prefix usr local share python3 存放pyton3的資料夾 開始編譯 sudo m...

python3學習日記 運算子

python語言支援以下型別的運算子 下面主要講一下成員運算子 身份運算子 邏輯運算子以及運算子優先順序運算子描述 in如果在指定的序列中找到值返回 true,否則返回 false。not in 如果在指定的序列中沒有找到值返回 true,否則返回 false。fruit orange banana...

Python3學習日記 流程控制

if 表示式 語句塊 if 表示式 語句塊else 語句塊 if 表示式 語句塊elif 表示式 語句塊else 語句塊1 while迴圈 while 條件表示式 語句塊只要條件表示式值為真,就執行語句塊 一般必須在語句塊內增加判斷終止迴圈條件,或修改條件表示式的值,並跳出迴圈,否則迴圈一直執行。2...