python基礎 函式

2021-08-07 11:10:50 字數 2444 閱讀 1853

def

funcname

(params):

...return value

'''如果沒有return 最後會返回none,如果只寫return 會返回none'''

'''返回值個數為乙個,但是可以返回tuple,表面上返回多個值

def f1():

return x,y

x,y=f1()

'''

def

nop():

pass

def

functest

():global x

x = 5

x = 1

print x

functest()

print x

"""輸出:15

"""

函式的引數分為四類:

在呼叫函式的時候,必須傳遞給函式引數

def

fun1

(para1):

print para1

#呼叫函式的時候,必須傳遞乙個引數

fun1("abc")

另外,函式呼叫的時候,可以指定引數的名稱和值

def

fun2

(p1,p2):

print p1,p2

#普通的函式呼叫方式,按照定義的順義傳入函式的實參

fun2("a","b")

#定製引數的值,這樣呼叫的時候,引數傳入的順序是隨意的

fun2(p2="b",p1="a")

使用者不想要為這些引數提供值的話,這些引數就使用預設值。

預設引數的值應該是不可變的—重要。

如果函式含有必選引數和預設引數,那麼函式定義的時候,應該將預設引數放在必選引數的後面。

def

power

(x, n=2):

print x,n

# 下面幾種呼叫的方式都是可以的:

power(x)

power(x,3)

power(x,n=3)

引數的個數是可變的,0或者任意個;#傳入到函式是乙個tuple

#定義:

def f2(*args):

pass

#下面是四種呼叫方式

f2()

f2(1)

f2(1,2)

nums = [1,2,3]; f2(*nums) //使用這種方式可以傳入乙個list或者tuple

#允許傳入 0 個或任意個含引數名的引數;#在函式內部自動組裝為乙個 dict

#定義:

deff3

(**kw):

pass

#下面是三種呼叫方式:

f3()

f3(city="ok")

kw = ; f3(**kw)

順序:必選引數、預設引數、可變引數和關鍵字引數

def

func

(a, b, c=0, *args, **kw):

print

'a =', a, 'b =', b, 'c =', c, 'args =', args, 'kw =', kw

#呼叫func(1, 2) #輸出=>a = 1 b = 2 c = 0 args = () kw = {}

func(1, 2, c=3) #輸出=>a = 1 b = 2 c = 3 args = () kw = {}

func(1, 2, 3, 'a', 'b') #輸出=>a = 1 b = 2 c = 3 args = ('a', 'b') kw = {}

func(1, 2, 3, 'a', 'b', x=99) #輸出=>a = 1 b = 2 c = 3 args = ('a', 'b') kw =

args = (1, 2, 3, 4)

kw =

func(*args, **kw)

#輸出=>a = 1 b = 2 c = 3 args = (4,) kw =

最通用的函式定義:func(*args, **kw), 無論引數怎麼樣傳遞都可以呼叫

文件字串 docstrings,適用於函式,模組,類

在函式的第乙個邏輯行的字串是這個函式的文件字串。

文件字串的慣例是乙個多行字串,它的首行以大寫字母開始,句號結尾。第二行是空行,從第三行開始是詳細的描述。

def

fun2

(p1,p2):

''' fun2 doc strings

'''print p1,p2

print fun2.__doc__

Python基礎 函式

函式設計原則 函式有多種方法獲得輸入產生輸出,一般使用引數作為輸入,return語句配合可變引數的改變作為輸出。函式輸入 函式輸出 def fun args returndef語句 def建立了乙個函式物件並將其賦值給乙個變數。def語句是實時執行的,在模組匯入時執行或者在互動模式下輸入時執行。始終...

Python 函式基礎

定義 函式是指將一組語句的集合通過乙個名字 函式名 封裝起來,要想執行這個函式,只需呼叫其函式名即可 為什麼使用函式 減少重複 使程式變的可擴充套件使程式變得易維護 1 定義乙個函式 2def func 使用def關鍵字定義函式 接函式名,括號內可以傳遞引數 3print hello world 函...

python基礎 函式

在程式設計過程中可以定義自己想要實現的功能的函式,語法如下 def 函式名 引數列表 函式名可以隨意編寫,但最好不要與內建函式重複,不然內建函式將被替換成你所定義的函式 函式體例 def f a,b,c,d return a,b,c,d c f 1,2,3,4 print c c,d,x,y f 1...