函式的概念
函式分類
函式的基本使用
def 函式名(引數列表):
函式體複製**
函式名(引數列表)
複製**
無參無返回值函式def test():
print(1 + 2)
test() # 列印: 3
複製**
函式的引數def test(num):
print(num ** 2)
複製**
test(3) # 列印: 9
複製**
多個引數的函式
def sum(num1, num2, num3):
print(num1 + num2 + num3)
複製**
# 形參與實參一一對應
sum(1, 2, 3) # 列印: 6
複製**
# 指明形參名稱, 不需要按照順序
sum(num3 = 3, num1 = 1, num2 = 2) # 列印: 6
複製**
不定長引數: 不同的應用場景, 傳遞引數數量不等
def sum(*args):
result = 0
for i in args:
result += i
print(result)
複製**
sum(1, 2, 3, 4) # 列印: 10
複製**
引數為字典: 在引數名前新增**
, 表示該函式引數數量不固定, 在函式內引數以字典的方式使用, 呼叫該函式時需要指明引數的key
和value
def info(**kwargs):
print("我的名字是 %s, 年齡是 %d" % (kwargs["name"], kwargs["age"]))
複製**
info(name="張三", age=18) # 列印: 我的名字是 張三, 年齡是 18
複製**
裝包: 把傳遞的引數, 包裝成乙個集合, 稱之為"裝包", 上述兩種方式都是裝包的過程
拆包: 把集合引數, 再次分解成單獨的個體, 稱之為"拆包"
def sum(*args):
print(args)
複製**
tuple = (1, 2, 3, 4)
sum(tuple) # 列印: ((1, 2, 3, 4),)
複製**
sum(*tuple) # 列印: (1, 2, 3, 4)
複製**
def info(**kwargs):
print(kwargs)
複製**
dic =
info(**dic) # 列印:
複製**
def sum(num1, num2):
print(num1 + num2)
複製**
dic =
sum(**dic) # 列印: 3
複製**
預設引數: 函式定義時, 可以給某些引數設定預設值, 呼叫時可以不傳遞該引數, 使用預設值
def sum(num1 = 1, num2 = 2):
print(num1 + num2)
複製**
sum() # 列印: 3
sum(num2 = 5) # 列印: 6
複製**
注意事項:
pyhton中引數的位址傳遞分為兩種函式的返回值當實參是不可變的資料型別時, 函式內形參改變, 不會改變實參
當實參是可變的資料型別時, 函式內形參改變, 實參也會改變
函式的使用描述
def 函式名(引數列表):
'''這裡是函式的使用描述(注釋)'
'' 函式體
複製**
def sum(num1, num2):
''' 求兩個數的和
:param num1: 數值1, 數值型別
:param num2: 數值2, 數值型別
:return: 返回兩個數的和, 數值型別
''' retrun num1 + num2
複製**
help(sum)
# 列印如下:
help on function sum in module __main__:
sum(num1, num2)
求兩個數的和
:param num1: 數值1, 數值型別
:param num2: 數值2, 數值型別
:return: 返回兩個數的和, 數值型別
複製**
python的基本概念 python基本概念
什麼是程式設計 就像開車一樣,你不需要知道按下啟動鍵的時候具體都幹了些啥操作,你只需要知道按它可以將發動機啟動就行,如果沒啟動,就是出問題了,可以再次嘗試,或者多次嘗試,還是不行就打 讓人來修。程式設計也是一樣,比如,我告訴計算機,你給我下乙個檔案,下失敗了就重試幾次,最後還是失敗就報錯,我自己去檢...
python基礎(十) 函式高階
graphic 三角形 def chang graphic 正方形 def chang1 內部巢狀的函式命名可相同 graphic 圓形 print 第三層列印 graphic chang1 print 第二層列印 graphic chang 第三層列印 圓形 第二層列印 正方形 print 第一層...
python函式概述 Python中函式概述
python中的函式 認識函式 在乙個完整的專案中,某些功能會反覆的使用。那麼我們會將功能封裝成函式,當我們要使用這個功能的時候 直接呼叫函式即可 本質 函式就是對功能的封裝 優點 1簡化 結構,增加了 的復用度 重複使用的程度 2如果想修改某些功能或者除錯某些bug,還需要修改對應的函式即可 引數...