摘要:定義的函數(shù)定義使用通過返回執(zhí)行結(jié)果常用內(nèi)置常用內(nèi)置函數(shù)待補充絕對值計算判斷是否是類型列表中的值強制類型轉(zhuǎn)換小數(shù)時僅保留整數(shù)位強制類型轉(zhuǎn)換編碼轉(zhuǎn)換強制類型轉(zhuǎn)換多值的函數(shù)是可以返回多值的定義調(diào)用可以看到,返回的多值是以形式輸出的參數(shù)的參數(shù)支持默
定義
Python的函數(shù)定義使用def
def func_name(x): return "hello world" //通過return 返回執(zhí)行結(jié)果常用內(nèi)置
常用內(nèi)置函數(shù)(待補充):
abs() // 絕對值計算 isinstance(v, (type list)) //判斷是否是類型列表中的值 boolen return int() //強制int類型轉(zhuǎn)換,小數(shù)時僅保留整數(shù)位 str() //強制string類型轉(zhuǎn)換 unicode //unicode編碼轉(zhuǎn)換 bool() //強制bool 類型轉(zhuǎn)換return 多值
python的函數(shù)是可以返回多值的
//定義 def infos(): name = "Yi_Zhi_Yu" age = 25 return name, age //調(diào)用 infos() //("Yi_Zhi_Yu", 25)
可以看到, 返回的多值是以tuple形式輸出的
參數(shù)python的參數(shù)支持默認(rèn)參數(shù)語法,但必須定義在函數(shù)參數(shù)的最后面的位置
注意: python的參數(shù)可以不需要嚴(yán)格按照定義的函數(shù)參數(shù)的位置傳遞進(jìn)去, 作為代價,需要告訴函數(shù)傳遞的參數(shù)對應(yīng)的是哪個,如下:
def infos(input_name, input_age=18): //默認(rèn)的參數(shù)定義age=18 name = input_name age = input_age return name, age infos("Yi_Zhi_Yu",25) // ("Yi_Zhi_Yu", 25) //默認(rèn)參數(shù)傳遞順序 infos(input_age=25, input_name="Yi_Zhi_Yu") //("Yi_Zhi_Yu", 25) 這里就沒有按照默認(rèn)的順序傳遞參數(shù)可變參數(shù)
當(dāng)需要向函數(shù)傳遞參數(shù),而又不知道參數(shù)的具體數(shù)量的時候, 可以使用如下定義方式:
//計算平均分 def average_score(*score): s = 0 for n in score: s += n return s/len(score) average_score(10, 8, 8, 10) //9
否則, 按照正常的方式, 還需要定義一個tuple或者list結(jié)構(gòu),然后傳遞給函數(shù)才能使用,上面的這種方式實際上本身傳遞進(jìn)去的就是一個tuple, 把所有的參數(shù)都自動放在了*對應(yīng)的參數(shù)里
那么如果傳遞進(jìn)去的參數(shù)假如本身就是一個tuple或list了, 而上面的方法我們已經(jīng)定義好了, 那么我們怎么辦, 一個個元素score[0], score[1]寫進(jìn)去又很麻煩, 怎么辦: 在傳遞tuple或list參數(shù)的時候帶個*即可
score = (10, 8, 8, 10) average_score(*score) //9 如果不帶*,會直接報錯類型錯誤關(guān)鍵字參數(shù)
首先必須搞清楚什么事關(guān)鍵字參數(shù), 在函數(shù)定義的時候明確表明了哪個參數(shù)的值是什么的時候就是關(guān)鍵字參數(shù), 我們在默認(rèn)參數(shù)那塊有用過
python 允許在函數(shù)參數(shù)傳遞任意的關(guān)鍵字參數(shù), 前提是最后一個參數(shù)定義必須帶了**
def new_infos(input_name, input_age, **other_info): return input_name, input_age, other_info
那這里除了第一個和第二個參數(shù), 第三個參數(shù)都是以dict 形式傳遞進(jìn)去的, 用一下就知道了
new_infos("Yi_Zhi_Yu",25, sex="man", interest="basketball")//("Yi_Zhi_Yu", 25, {"interest": "basketball", "sex": "man"}) //other_info 接受了除第一個第二個參數(shù)外的關(guān)鍵字參數(shù)混合參數(shù)
如果同時傳遞以上幾種類型, 該如何定義呢, 按照順序, 必須是
必要參數(shù), 默認(rèn)參數(shù), 可變參數(shù), 關(guān)鍵字參宿
所以在使用的時候要注意了
Ps: 以上為學(xué)習(xí)記錄, 難免有錯, 希望各位指正
參考:廖雪峰Python教程
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/45386.html
摘要:為我們提供了許多內(nèi)置函數(shù),例如并提供了創(chuàng)建用戶定義函數(shù)的能力。會將該變量視為函數(shù)級作用域中的局部變量。回到目錄中函數(shù)的用途是什么是中的內(nèi)置函數(shù)之一。請注意,這種類型的參數(shù)語法不允許將命名參數(shù)傳遞給函數(shù)。函數(shù)接受一個稱為的可選參數(shù)。 ...
摘要:回到目錄評論區(qū)抽粉絲送書啦歡迎大家在評論區(qū)提出意見和建議抽兩位幸運兒送書,實物圖如下開發(fā)從入門到精通內(nèi)容簡介案例教學(xué)。 ? 作者主頁:海擁 ? 作者簡介:?CSDN...
摘要:調(diào)用以回調(diào)函數(shù)地址為參數(shù)的函數(shù)這個主題就稍微繞一些了,也就是說在接口中,需要傳入回調(diào)函數(shù)作為參數(shù)。這個問題在中也可以解決,并且回調(diào)函數(shù)可以用定義。代碼代碼很簡單回調(diào)函數(shù)的傳入?yún)?shù)為,返回參數(shù)也是。 項目中要對一個用 C 編寫的 .so 庫進(jìn)行邏輯自測。這項工作,考慮到靈活性,我首先考慮用 Python 來完成。 研究了一些資料,采用 python 的 ctypes 來完成這項工作。已經(jīng)...
摘要:主要是庫文件頭文件文件不一致的問題。定義模塊函數(shù)其中函數(shù)參數(shù)是模塊自身,是傳遞的參數(shù)列表,返回值定義了一個整形數(shù),這里會申請空間增加引用計數(shù),交由來管理這個引用。 C++開發(fā)python windows版本的擴展模塊示例測試環(huán)境介紹和準(zhǔn)備測試環(huán)境:操作系統(tǒng):windows10Python版本:3.7.0VS版本:vs2015社區(qū)版(免費)相關(guān)工具下載:VS版本vs2015社區(qū)版(免費)...
摘要:主要是庫文件頭文件文件不一致的問題。定義模塊函數(shù)其中函數(shù)參數(shù)是模塊自身,是傳遞的參數(shù)列表,返回值定義了一個整形數(shù),這里會申請空間增加引用計數(shù),交由來管理這個引用。 C++開發(fā)python windows版本的擴展模塊示例測試環(huán)境介紹和準(zhǔn)備測試環(huán)境:操作系統(tǒng):windows10Python版本:3.7.0VS版本:vs2015社區(qū)版(免費)相關(guān)工具下載:VS版本vs2015社區(qū)版(免費)...
摘要:官方也宣布在停止對的維護(hù)。并且在很多面試過程中,面試官都會問與的區(qū)別。的版本,常被稱為,或簡稱。與部分地支持這種形式的語法。捕獲異常的語法由改為。在中,表示八進(jìn)制字面量的方式只有一種,就是。已經(jīng)支援新的模組。 前言 如果你是剛接觸 Python 的初學(xué)者,那你可能是直接學(xué)習(xí) Python 3.x 版本。對于 Python 2.x 的版本是不會有所接觸。官方也宣布在 2020 停止對 P...
閱讀 3543·2021-09-22 15:50
閱讀 3241·2019-08-30 15:54
閱讀 2755·2019-08-30 14:12
閱讀 3064·2019-08-30 11:22
閱讀 2088·2019-08-29 11:16
閱讀 3583·2019-08-26 13:43
閱讀 1196·2019-08-23 18:33
閱讀 929·2019-08-23 18:32