python函式的引數

2021-07-29 07:01:58 字數 2007 閱讀 8225

1.python函式的返回值

python使用def關鍵字定義函式,和其他語言一樣,函式基本上可以分為有返回值和沒有返回值2種,一般來說還可以分為運算功能和處理功能型函式。

先說點題外話:python2和python3在函式的使用上的些微差別

>>> 

defrun

(name):

print name+'runing'

syntaxerror: invalid syntax

>>>

defrun

(name): print(name+'runing')

有返回的函式

>>> 

defrun

(name):

return name+'runing'

>>> r=run('xiaoming')

>>> r

'xiaomingruning'

>>> print(run('xiaoming '))

xiaoming runing

沒有返回值的函式,其實返回的是none

>>> 

defrun

(name): print(name+'runing')

>>> run('xi')

xiruning

>>> print(run('xiao'))

xiaoruning

none

2.python函式的文件字串

在python中,可以使用三重引號建立多行注釋;在函式內部寫在第一行的三重引號注釋叫做文件字串,寫在檔案首行的則稱為模組的文件字串;在其他地方使用了乙個三重引號而沒有把他賦值給乙個變數(這樣是乙個字串變數),三重引號之間的所有內容被認為是乙個注釋。

使用__doc__檢視文件字串內容

3.lambda關鍵字建立匿名函式

待續…1.引數傳遞(函式呼叫慣例是,從尾部向前傳參?)

python函式的引數列表可以任意多個,傳遞引數時採取位置繫結和關鍵字繫結2種方式,用來確認傳入的引數。

位置繫結就是我們常見的在對應位置填入引數進行傳遞的方式;

關鍵字繫結就是根據函式的引數列表的名字使用賦值語句的方式進行引數傳遞;

ps:某個引數不能同時使用上面2種方式進行引數傳遞;第乙個引數使用了關鍵字繫結,後面的引數必須使用關鍵字繫結

2.定義函式時的引數

定義函式可以只提供乙個引數列表,也可以將必要的引數變成可選引數(預設引數),賦給乙個預設值。

為引數提供乙個預設值(或者叫預設值),將引數變成可選的引數

如果乙個函式定義的引數有預設值,這個引數之後的所有引數必須都是預設引數,避免產生二義性(之後的引數都要有預設值,否則就要放到這個引數的前面)

否則會丟擲:syntaxerror: non-default argument follows default argument的異常。

還有一些我們不常用到的引數定義的規則,比如*arg和**arg的形式(可變引數);另外,當引數是列表、元組這些還有一些其他的關鍵字引數的時候,可能會有一些異常情況,待續(碰到了再查開發者文件^_^)

def example(a, b, c=none, r="w" , d=, *ae,  **ab):

(a,b) are positional parameter

(c=none) is optional parameter

(r="w") is keyword parameter

(d=) is list parameter

(*e) is keyword-only

(*opts) is var-keyword parameter

so first re-arrange your parameters

python引數函式 Python函式引數總結

coding utf 8 整理一下python函式的各種引數型別 位置引數 呼叫函式時,傳入的兩個值按照位置順序依次賦給引數 def power x,n s 1 while n 0 n n 1 s s x return s print power 5,2 預設引數 簡化函式的呼叫 def power...

python 引數 Python函式 引數

python中將函式作為引數,區分將引數直接寫成函式名和函式名 的區別。def fun1 fun print print print fun 執行fun1 fun4 時,fun為函式fun3的返回值x print type fun type fun type fun fun 執行fun1 fun4 ...

python 函式的引數

位置引數 def power x,n s 1 while n 0 n n 1 s s xreturn s 以上的函式旨在於實現計算x的n次方 預設引數 def power x,n 2 s 1 while n 0 n n 1 s s x return s以上函式中,預設n 2,這樣情況下,不需要每次輸...