Python函数定义和函数调用
我們已經使用了一些python內建函數,比如print()、input()、str()等等。
也使用了一些python自帶模塊的一些庫函數,比如math模塊的abs()函數。
函數定義:
語法:def關鍵字、函數名、([參數])、冒號、下一行縮進代碼塊(使用return 值 作為函數返回值)。
函數調用:函數名([參數])
示例:自定義一個函數,要求傳入一個任意數值,返回傳入參數的絕對值。
>>> def my_abs(invalue): ... if invalue<0: ... invalue=-invalue ... return invalue ... >>> my_abs(-1) 1 >>> my_abs(2) 2 >>> my_abs(-0) 0 >>> my_abs(0) 0說明:my_abs()是一個帶參數、帶返回值的函數
示例:自定義一個無參數、不帶return的函數。
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' >>> def my_function(): ... print('你好python...') ... >>> rtn=my_function() 你好python... >>> print(rtn) None >>> type(rtn) <class 'NoneType'>說明:my_function()執行后,輸出返回值為None?這是因為如果我們沒有寫return語句,python會為我們自動在函數末尾追加一個return None。
示例:定義函數 return后面跟多個以逗號隔開的值
>>> def change_value(p1,p2): ... tmp=p1 ... p1=p2 ... p2=tmp ... return p1,p2 ... >>> change_value(11,90) (90, 11) >>> value1,value2=change_value(7,121) >>> value1 121 >>> value2 7說明:return 后面跟多個值,以逗號隔開,貌似我們最終能夠得到多個值,其實不然,我們得到的是一個元組。從上面的執行結果就可以看出。
示例:定義一個空函數,需要用到pass關鍵字。
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' >>> def dono(): ... pass ... >>> dono() >>> rtn=dono() >>> print(rtn) None說明:我們定義這個函數之初,并沒有想好這個函數要干什么,那么函數體內可以什么都不寫,只寫一個pass關鍵字就行了。
pass關鍵字:pass其實很有用 當我們在任何時候不知道下一步要做什么都可以先用pass使我們的程序不報錯。
示例:
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' >>> age=18 >>> if age>=18: ... pass ... else: ... print('未滿18可別抽煙') ... >>> if age>=18: ...File "<stdin>", line 2^ IndentationError: expected an indented block說明:上面的例子可以看出,在滿足age>=18后 如果我們不使用pass關鍵字,那么程序就會報錯。
總結
以上是生活随笔為你收集整理的Python函数定义和函数调用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python argparse理解与实例
- 下一篇: python多线程用法及与单线程耗时比较