吴忠躺衫网络科技有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

python定義函數與調用函數的順序

麥辣雞腿堡 ? 來源:Python都知道 ? 作者:Python都知道 ? 2023-10-04 17:17 ? 次閱讀

定義函數與調用函數的順序

函數被定義后,本身是不會自動執行的,只有在被調用后,函數才會被執行,得到相應的結果。但是在 Python 中我們要注意一個關鍵點,就是Python不允許前向引用,即在函數定義之前,不允許調用該函數。

例如:

printplus(1,2)defplus(a,b):returna+b

運行結果為:

NameError:name'plus'isnotdefined

從報錯結果可以看出,名字為plus的函數還沒進行定義(雖然我們是在后面進行了定義)。所以當我們在調用函數時,一定要確定在調用之前進行了函數定義。

正確使用參數

我們要在調用函數時,需要正確調用函數的名稱和參數

例如我們定義了一個加法函數:

defplus(a,b):returna+b

我們在調用plus()函數時,如果傳入的參數類型不對,會報TypeError錯誤。而且有時我們傳入的參數類型不是規定類型的話,就算調用函數運行結果沒有報錯,也會產生邏輯錯誤。

例如:

#定義plus函數,作用是求兩個正整數之和defplus(a,b):returna+b#調用plus函數,參數類型為'1','2'print(plus('1','2'))

輸出結果:

12

雖然上述例子的程序運行結果沒有報錯,但是結果卻與我們的預期不符,因為我們的本意是調用plus()加粗樣式函數實現兩個整數的加法。但是如果我們傳入的是字符串類型的數值時,結果就是兩個字符串的拼接。所以這個例子告訴我們一定要注意傳入參數的類型。當我們傳入正常類型的參數時,傳入的參數個數不一致時,也會報TypeError錯誤。

例如:

#定義plus函數,作用是求兩個正整數之和defplus(a,b):returna+b#調用plus函數,參數為1,2,3print(plus(1,2,3))

報錯:

TypeError:plus()takes2positionalargumentsbut3weregiven

報錯原因顯示,因為plus()函數允許有且僅有2個參數,但是卻在調用時傳入了3個參數,所以程序報錯。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 字符串
    +關注

    關注

    1

    文章

    585

    瀏覽量

    20601
  • 函數
    +關注

    關注

    3

    文章

    4346

    瀏覽量

    62968
  • python
    +關注

    關注

    56

    文章

    4807

    瀏覽量

    85037
收藏 人收藏

    評論

    相關推薦

    一文詳解python調用函數

    函數定義后,本身是不會自動執行的,只有在被調用后,函數才會被執行,得到相應的結果。但是在 Python 中我們要注意一個關鍵點,就是
    發表于 10-01 10:45 ?720次閱讀

    如何查看及更改函數/函數塊的調用環境

    模塊化設計的思想是把一些相似的功能(比如電機控制、閥控制)設計成函數函數塊,這樣就可以反復調用。其優點是:使程序架構更加清晰,避免重復編寫相似功能的代碼。不過可能會產生一個疑惑:既然PLC的程序
    的頭像 發表于 11-17 09:08 ?1035次閱讀
    如何查看及更改<b class='flag-5'>函數</b>/<b class='flag-5'>函數</b>塊的<b class='flag-5'>調用</b>環境

    matlab自定義函數調用的方法

    matlab自定義函數調用的方法 命令文件/函數文件+ 函數文件 - 多
    發表于 11-29 13:14 ?88次下載

    高效的C編程之函數調用

    指令BL或MOV pc,lr一般只需要6個指令周期(ARM7上)。 在函數的入口和出口使用多寄存器加載/存儲指令LDM和STM(Thumb指令使用PUSH和POP)提高函數體的執行效率。 ARM體系結構過程調用標準AAPCS
    發表于 10-17 16:49 ?6次下載
    高效的C編程之<b class='flag-5'>函數</b><b class='flag-5'>調用</b>

    Python3函數知識大全包括定義,調用,參數,變量等詳細舉例說明

    函數是組織好的,可重復使用的,用來實現單一,或相關聯功能的代碼段。函數能提高應用的模塊性,和代碼的重復利用率。Python提供了許多內建函數,比如print()。但也可以自己創建
    的頭像 發表于 06-02 10:33 ?6609次閱讀
    <b class='flag-5'>Python</b>3<b class='flag-5'>函數</b>知識大全包括<b class='flag-5'>定義</b>,<b class='flag-5'>調用</b>,參數,變量等詳細舉例說明

    詳解python普通函數創建與調用

    函數是一種僅在調用時運行的代碼塊。您可以將數據(稱為參數)傳遞到函數中,然后由函數可以把數據作為結果返回。
    的頭像 發表于 03-01 16:32 ?1907次閱讀

    python語言之使用async關鍵字來定義函數

    早期的協程是用yield來實現的,但是代碼特別難懂, python3.5之后的版本, 使用 async 關鍵字來定義函數調用函數,會返
    的頭像 發表于 08-24 11:12 ?2819次閱讀

    Python入門之什么是函數

    Python函數比我們想象的更為靈活。由于Python函數是對象,所以函數對象可以賦值給其他的名字、傳遞給其他
    的頭像 發表于 02-21 14:24 ?528次閱讀

    Python函數調用是什么

    定義函數的關鍵字def。def后面緊跟空格。函數名可以自己命名。
    的頭像 發表于 02-23 10:57 ?1016次閱讀

    C語言函數調用的形式及過程

    C語言函數調用時的數據傳遞 在調用有參函數時,主調函數和被調函數之間有數據傳遞關系。
    的頭像 發表于 03-10 14:28 ?1896次閱讀

    什么是函數調用

    函數調用,就是使用我們已經定義好的函數,或者C語言自帶的庫函數
    的頭像 發表于 04-04 17:21 ?5977次閱讀

    python函數函數之間的調用

    ) 運行結果: 無結果 分析:因為第9行中的x(f)中的f沒有帶括號,f只是一個普通的參數,所以程序只調用執行了x(f)函數,沒有調用執行f()函數。x(f)
    的頭像 發表于 10-04 17:17 ?644次閱讀

    Python 函數參數分類

    文章應該對你會有不小的幫助。 接下來是正文。 1. 參數分類 函數,在定義的時候,可以有參數的,也可以沒有參數。 從函數定義的角度來看,參數可以分為兩種: 必選參數 :
    的頭像 發表于 10-21 10:45 ?880次閱讀

    python如何定義一個函數

    一、Python3 函數 函數是組織好的,可重復使用的,用來實現單一,或相關聯功能的代碼段。 函數能提高應用的模塊性,和代碼的重復利用率。你已經知道
    的頭像 發表于 11-14 11:26 ?776次閱讀

    python調用math函數的方法

    中。本文將詳細介紹math模塊中的各種數學函數調用方法,包括函數的功能、參數的使用和返回值的含義等方面,以幫助讀者更好地理解和應用這些函數。 一、導入math模塊 要使用math模塊
    的頭像 發表于 11-22 11:01 ?3159次閱讀
    太阳城百家乐网上| 百家乐网站| 赌场百家乐官网是如何| 百家乐必胜法技巧| 百家乐官网冯式打法| 现场百家乐平台源码| 尊龙国际娱乐| 百家乐赌博怎么玩| 浩博国际娱乐城| 百家乐下载免费软件| 和平区| 百家乐翻天youtube| 托克托县| 菲律宾百家乐太阳城| 蒙城县| 百家乐怎么才能| 澳门百家乐官网网址多少| 利澳百家乐的玩法技巧和规则| 百家乐官网桌台布| 威尼斯人娱乐网网上百家乐| 百家乐官网博乐36bol在线| 大发888赌博违法吗| 24山安葬择日吉凶| 永善县| 百家乐微笑打法| 菲律宾百家乐官网开户| 大发888为什么打不开| 百家乐官网游戏大| 赌场风云演员表| 网上百家乐娱乐平台| 百家乐官网赌博网址| 大发888手机版亚洲城| 百家乐官网手机壳| 网络真人赌博| 唐人街百家乐的玩法技巧和规则| 百家乐官网网上真钱娱乐平台| 棋牌室名字| 百家乐注册开户送现金| 百家乐官网庄闲出现几率| 大发888博彩| 百家乐娱乐分析软|