撩課-Python-每天5道面試題-第6天

一. 函數(shù)的概念是什么? 在Python中如何定義?使用場景是什么?

  1. 概念
    寫了一段代碼實(shí)現(xiàn)了某個(gè)小功能; 然后把這些代碼集中到一塊, 起一個(gè)名字; 下一次就可以根據(jù)這個(gè)名字再次使用這個(gè)代碼塊, 這就是函數(shù)

  2. 定義

def 函數(shù)名稱(參數(shù)1, 參數(shù)2...):
       pass # 具體的函數(shù)執(zhí)行代碼
       return None # 默認(rèn),  可以根據(jù)需求設(shè)置返回值
  1. 使用場景
    將需要多次執(zhí)行的重復(fù)性代碼, 進(jìn)行封裝成函數(shù), 方便代碼的重用
def xxx():
   print(1)
   print(2)
   print(3)

將有規(guī)律的重復(fù)性代碼, 封裝成函數(shù), 更加靈活方便

def xxx(num):
   for i in range(0, num):
       print(i)

分解任務(wù), 簡化程序邏輯, 使代碼更加模塊化

def firstStep():
   pass
def secondStep():
   pass
def thirdStep():
   pass
firstStep()
secondStep()
thirdStep()

二. 嘗試封裝一個(gè)函數(shù), 計(jì)算不定數(shù)據(jù)的累加和, 返回給外界

def 累加和(num):
    result = 0
    for i in range(1, num + 1):
        result += i
    return result

print(累加和(4)) # 10
print(累加和(10)) # 55

三. 如何定義不定長參數(shù)函數(shù)?

def  函數(shù)名(*args): 
    pass
def 函數(shù)名(**kwargs):
    pass

前者是普通參數(shù)
后者適用于關(guān)鍵字參數(shù)
需要注意: 傳遞之后的拆包操作

  1. 裝包
    把傳遞的參數(shù), 包裝成一個(gè)集合, 稱之為"裝包"
  2. 拆包
    把集合參數(shù), 再次分解成單獨(dú)的個(gè)體, 稱之為"拆包"

四. 缺省參數(shù)代表什么含義?

  1. 場景
    當(dāng)我們使用一個(gè)函數(shù)的時(shí)候, 如果大多數(shù)情況下, 使用的某個(gè)數(shù)據(jù)是一個(gè)固定值, 或者屬于主功能之外的小功能實(shí)現(xiàn);
    則可以使用默認(rèn)值
    這種參數(shù), 稱為"缺省參數(shù)"
  2. 定義
    def 函數(shù)名(變量名1=默認(rèn)值1, 變量名2=默認(rèn)值2):
    函數(shù)體
    函數(shù)體中, 即使外界沒有傳遞指定變量, 也可以使用, 只不過值是給定的默認(rèn)值
  3. 使用
    函數(shù)名(變量1, 變量2)
    此處如果是缺省參數(shù), 則可以不填寫
def sum(a, b = 0):
    print(a + b)

sum(6) # 6
sum(2, 6) # 8

五. Python函數(shù)中, 值是引用傳遞還是值傳遞?

  1. 值傳遞和引用傳遞
    1.1 值傳遞
    是指傳遞過來的, 是一個(gè)數(shù)據(jù)的副本;
    修改副本, 對原件沒有任何影響
    1.2引用傳遞
    是指傳遞過來的, 是一個(gè)變量的地址
    通過地址, 可以操作同一份原件

  2. 在Python當(dāng)中, 你沒得選, 只有引用傳遞(地址傳遞)
    但是
    如果數(shù)據(jù)類型是可變類型, 則可以改變原件
    如果數(shù)據(jù)類型是不可變類型, 則不可以改變原件

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、快捷鍵 ctr+b 執(zhí)行ctr+/ 單行注釋ctr+c ...
    o_8319閱讀 6,014評論 2 16
  • 堅(jiān)持分享第566天2018-11-03周六 學(xué)習(xí)是自己的事,無關(guān)其他,不管結(jié)果; 事情就是那個(gè)樣子,不爭不論,隨它...
    YY仰望星空閱讀 244評論 1 2
  • 就這么走著 相熟的,陌生的 不需要微笑 也不需要記恨 反正都忙碌著。 就這么走著 是終點(diǎn)也是起點(diǎn) 不需要計(jì)劃 也不...
    月影樵閱讀 234評論 0 3

友情鏈接更多精彩內(nèi)容