1. 程式人生 > >python_day08_函式引數/返回值

python_day08_函式引數/返回值

簡單函式
def ss(x,y):
rex = x**y
print(rex)
ss(2,10)

引數 x,y 讓函式更靈活,讓引數決定函式內部執行流程

  • ① 形參變數: 只有在被呼叫時才分配記憶體單元,在呼叫結束時,即刻釋放所分配的記憶體單元. 因此,形參只在函式內部有效.函式呼叫結束返回住呼叫函式後則不能再使用該形參變數
  • ②實參 : 可以是常量 /變數/表示式/函式等,無論實參是何種型別的量,在進行函式呼叫時,他們都必須又確定的值,以便把這些值傳送給形參.因此應預先用賦值/輸入等方法使引數獲得確定值
  • 在這裡插入圖片描述
  • 預設引數: 使形參預設為特定值
def sayhello(name,age,country='CN'):
  • 關鍵引數 : 正常情況下,給函式傳引數要按順序,不想按順序可以用到關鍵引數,只需指定引數名即刻(制訂了引數名的引數就叫關鍵引數)但是,關鍵引數必須放在位置引數之後
    在這裡插入圖片描述

  • 非固定引數

  • 在程式碼中, *user 可以接受多個引數, 接受的引數會被打包成元組. user 可以傳入*[‘cobitry’,‘admin’]的列表, 前面如果傳入多個值,都會被user接收打包, 後面的引數必須使用關鍵引數

def	send_alert(*user,msg): ##*user 一般會被寫為*args
	for i in user:
		print('發訊息給', i)
send_alert('cobitry','admin',msg='出錯了')
  • 未定義的關鍵字引數,
    • 存在一個形式引數為 **kwargs 作用為: 接收 非定義的 關鍵字引數
def	send_alert(*user,msg,**kwargs): ##*user 一般會被寫為*args
	for i in user:
		print('發訊息給', i)
send_alert(add='啦啦')
  • 返回值(return)
    預設 return None
    return 代表一個函式的終止. … 下面程式碼不再執行.
    return 只能返回一個值, 如果有多個值,會被打包成為一個元組…,