python之函式基礎

2021-08-11 04:08:52 字數 1653 閱讀 1529

python 函式

python函式可以返回多值

>>> 

defadd_dif

(x,y,):

sum=x+y

dif=x-y

return sum,dif

>>> a,b=add_dif(2,3)

>>>

print a,b

5 -1

>>> r=add_dif(2,3)

>>>

print r

(5, -1)

本質來說返回多值的函式其實返回乙個元組tuple

遞迴函式用法

def

f(n):

if n==1:

return

1else:

return n * f(n - 1)

簡單來說,遞迴的最終依賴於第乙個基數,所以在遞迴函式裡處理第乙個集元素是非常必要的(個人理解)。

python中函式的預設引數

>>> 

deff

(a,n=2):

print a**n

>>> f(2)

4>>> f(2,4)

16>>>

n是乙個預設引數,如果船引數是沒有傳將預設為2,如果傳入了n的值,傳進去的值將覆蓋預設引數。

預設引數要放到所有所有傳參的後面。

python中可變引數

>>> 

deffadd

(*args):

sum=0

if len(args)==0:

return sum

for x in args:

sum=sum+x

return sum

>>> s=fadd(1,2,3)

>>>

print s

6

這裡乙個最大的秘訣是這個 『*』號,他代表傳入的引數是不固定的。

其實相當於傳入的是乙個元組tuple。

高階函式

基本概念:變數可以指向函式

>>> f=abs  #f指向了abs函式

>>> f(-20)

20>>>

高階函式

>>> 

defadd_abs

(x, y, f):

return f(x)+f(y)

>>> add_abs(2,-3,abs)

5>>>

將f引數指向了abs,即變數傳參傳的是乙個函式

python 中一些內建的函式

map函式:

內建高階函式,傳遞的 第乙個引數是函式,第二個是列表,函式對列表中的每乙個元素進行操作,返回新的列表

>>> map(abs,[1,-1,2,-2])

[1, 1, 2, 2]

sorted排序函式

>>> sorted([2,3,5,8,4,6,3])

[2, 3, 3, 4, 5, 6, 8]

這是乙個簡單的用法,他還可以自己寫排序函式傳入sorted實現自定義排序函式。

Python基礎之函式

不同型別的引數的優先順序 在引數列表中的順序 def testfunc1 pass這是乙個最簡單的函式,沒有引數,沒有返回,pass表示該函式沒有做任何操作,testfunc1是函式名,def是關鍵字,表示這是乙個函式 呼叫函式時給出函式並給函式傳遞相應的引數,對於命名關鍵字引數需要給出引數名,位置...

Python之函式(基礎)

1.函式的定義 1 函式的定義與呼叫 定義函式 def say hello print hello1 print hello2 print hello3 呼叫函式,函式只有被呼叫了才會有輸出值 示例1 定義求和函式 計算 20 30 2 函式的巢狀 def fun1 print world def ...

python基礎之函式

在任何一門程式語言中,函式都是非常重要的乙個部分,當然python裡也不例外。不過python裡函式也會有一些額外的擴充,比如巢狀函式,閉包和現在很多程式設計 語言都有的lambda表示式。先來看一下python裡正常函式的樣子 a 1def func num print num a 函式裡可以直接...