第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

章節(jié)
問答
課簽
筆記
評論
占位
占位

Python函數(shù)參數(shù)

函數(shù)參數(shù)是需要傳遞給函數(shù)內(nèi)部的數(shù)據(jù),在前面,我們已經(jīng)簡單接觸了函數(shù)的參數(shù),現(xiàn)在我們正式來認識它。
函數(shù)參數(shù)可以是任意的數(shù)據(jù)類型,只要函數(shù)內(nèi)部邏輯可以處理即可。

def print_param(param):
    print(param)

對于print_param函數(shù),由于函數(shù)的邏輯是直接打印參數(shù),并沒有做任何別的邏輯,所以這個函數(shù)可以接受整數(shù)、浮點數(shù)、list、tuple、dict等等的數(shù)據(jù)類型。

print_param(1)
print_param('3.1415926')
print_param([1, 2, 3, 4, 5])

但是,有時候由于函數(shù)的實現(xiàn)關系,需要特定的參數(shù),就比如前面實現(xiàn)的求絕對值的函數(shù)my_abs(),如果傳遞一個字符串,就會引起錯誤。

def my_abs(x):
    if x >= 0:
        return x
    else:
        return -x

my_abs('str param')
# 報錯
TypeError: '>=' not supported between instances of 'str' and 'int'

為了保證函數(shù)的正常運行,有時候需要對函數(shù)入?yún)⑦M行類型的校驗,Python提供isinstance()函數(shù),可以判斷參數(shù)類型,它接收兩個參數(shù),第一個是需要判斷的參數(shù),第二個是類型。

isinstance(100, int) # ==> True
isinstance(100.0, int) # ==> False
isinstance('3.1415926', str) # ==> True

有了isinstance,就可以優(yōu)化my_abs函數(shù),不在里面運行出錯了。

def my_abs(x):
    if not isinstance(x, int) or not isinstance(x, float):
        print('param type error.')
        return None
    if x >= 0:
        return x
    else:
        return -x

任務

請實現(xiàn)函數(shù)func,當參數(shù)類型為list時,返回list中所有數(shù)字類型元素的和,當參數(shù)類型為tuple時,返回tuple中所有數(shù)字類型元素的乘積。

?不會了怎么辦

參考答案:

def func(param):
    if isinstance(param, list):
        result = 0
        for item in param:
            if isinstance(item, int) or isinstance(item, float):
                result += item
        return result
    elif isinstance(param, tuple):
        result = 1
        for item in param:
            if isinstance(item, int) or isinstance(item, float):
                result *= item
        return result
    return None
||

提問題

寫筆記

公開筆記
提交
||

請驗證,完成請求

由于請求次數(shù)過多,請先驗證,完成再次請求

加群二維碼

打開微信掃碼自動綁定

您還未綁定服務號

綁定后可得到

  • · 粉絲專屬優(yōu)惠福利
  • · 大咖直播交流干貨
  • · 課程更新,問題答復提醒
  • · 賬號支付安全提醒

收藏課程后,能更快找到我哦~

使用 Ctrl+D 可將課程添加到書簽

邀請您關注公眾號
關注后,及時獲悉本課程動態(tài)

舉報

0/150
提交
取消
全部 精華 我要發(fā)布
全部 我要發(fā)布
最熱 最新
只看我的

手記推薦

更多

本次提問將花費2個積分

你的積分不足,無法發(fā)表

為什么扣積分?

本次提問將花費2個積分

繼續(xù)發(fā)表請點擊 "確定"

為什么扣積分?