顯示函式名 Python函式的定義與呼叫

2021-10-16 07:49:37 字數 1515 閱讀 6921

函式是組織好的、可重複使用的、用來實現一定功能的**段。

函式設計遵循單一職責原則,提倡乙個函式只完成單一乙個功能,降低程式的藕合性,提高可維護性。

def 函式名( 引數列表): "函式_文件字串" 函式體 return [表示式]#可選,沒有這行相當於返回none。
函式名()#有引數的在括號裡加上引數
1.基本引數的使用

def vs(a,b,c):#根據長寬高,求長方體體積 s=a*b*c; print("area=%.2f" %s)vs(5,4,2)
傳遞的引數與定義的引數一一對應

2.預設引數的使用

def vs(a,b,c=2):
呼叫時vs(5,4),c引數可以省略,用預設值代替,等同vs(5,4,2)。當然也可以不理會,傳三個引數進去。

帶預設值的引數不能位於不帶預設值的前面。如下定義就是錯誤的

def vs(a,b=4,c):
3. 不定引數的使用這是python語言特有的功能,顯示了其功能的強大。

def 函式名([formal_args,] *var_args_tuple, **var_args_dict): "函式_文件字串" 函式體 return [表示式]#可選,沒有這行相當於返回none。
formal_args為傳統定義的引數,*var_args_tuple, **var_args_dict為不定長引數。函式傳入時優先匹配傳統引數,沒有過多的引數匹配不定長引數,則不定義引數顯示為空。如下例:

def test(a,b,*args,**dictargs): print(a) print(b) print(args) print(dictargs)test(11,22)
結果:

1122(){}
如果傳入引數多於傳統引數,則分如下兩種情況:

(1) 引數沒有指定名稱,以元組的形式存入var_args_tuple。

(2) 引數指定名稱,以dict的形式存入var_args_dict

def test(a,b,*args,**dictargs): print(a) print(b) print(args) print(dictargs)test(11,22,33,44,kk=55,kt=66)
結果:

1122(33, 44)
同樣的,指定名稱的引數不能在沒有指定名稱的引數前面。如下呼叫是錯誤的。

test(11,22,33,44,kk=55,kt=66,77)
使用return返回值,如果沒有return相當於返回none。

函式 函式名的本質

函式名的本質 簡單地說 可以當普通變數用 是指向記憶體位址的乙個名字,且同樣可以賦值 所謂的變數名,對於計算機都是乙個記憶體位址 func 函式名就是記憶體位址 func2 func 函式名可以賦值 func2 因此,可以將函式名存入列表中,迴圈呼叫 函式名可以作為容器型別的元素 l func,fu...

python通過函式名呼叫函式的幾種場景

一 說明 之前寫了一篇 python執行系統命令教程 講了如何執行系統命令。除了執行系統命令外,我們有時還需要動態地執行一些python 有經驗的朋友就會知道可以使用內建函式eval實現這一需求,如eval print file 這還是比較簡單的。但如果要動態執行乙個函式,講的資料就會少一點,這次就...

函式名的運用

def func print 呵呵 print func 結果 def func print 呵呵 print func a func 把函式當成乙個變數賦值給另乙個變數 a 函式呼叫def func print 呵呵 def func print 呵呵 def func print 呵呵 def ...