黑馬程序員python教程,8天python從入門到精通,學(xué)python看...

Python 中的函數(shù)是一塊可重復(fù)使用的代碼塊,用于執(zhí)行特定的任務(wù)。 Python 中有關(guān)函數(shù)的基礎(chǔ)知識(shí)總結(jié):
1. 定義函數(shù):使用關(guān)鍵字
def
后跟函數(shù)名來定義一個(gè)函數(shù)。在函數(shù)定義中,可以指定參數(shù)和默認(rèn)參數(shù)。
?? def function_name(parameters): ?????? # 函數(shù)體 ?????? return result ??
2. 函數(shù)參數(shù):函數(shù)可以接受一或多個(gè)參數(shù)。參數(shù)可以是必需的或可選的。函數(shù)可以接受位置參數(shù)、關(guān)鍵字參數(shù)或可變參數(shù)。函數(shù)定義的參數(shù)稱為形式參數(shù),而調(diào)用函數(shù)時(shí)傳遞給函數(shù)的參數(shù)稱為實(shí)際參數(shù)。
?? def add(x, y): ?????? return x + y ?? result = add(2, 3)? # 位置參數(shù) ?? result = add(x=2, y=3)? # 關(guān)鍵字參數(shù) ?? result = add(*[2, 3])? # 可變參數(shù) ??
3. 函數(shù)返回值:使用
return
語句返回函數(shù)計(jì)算的結(jié)果。可以返回單個(gè)值或多個(gè)值(作為元組)。
?? def square(x): ?????? return x ** 2 ?? result = square(5) ??
4. 匿名函數(shù)(Lambda 函數(shù)):使用關(guān)鍵字
lambda
創(chuàng)建一個(gè)簡單的、匿名的函數(shù)。通常用于簡化代碼或在其他函數(shù)中作為參數(shù)使用。
?? add = lambda x, y: x + y ?? result = add(2, 3) ??
5. 默認(rèn)參數(shù):在函數(shù)定義中,可以指定參數(shù)的默認(rèn)值。調(diào)用函數(shù)時(shí),如果沒有提供該參數(shù)值,則將使用默認(rèn)值。
?? def greet(name="Guest"): ?????? print(f"Hello, {name}!") ?? greet()? # Hello, Guest! ?? greet("Alice")? # Hello, Alice! ??
6. 可變參數(shù):使用星號(hào)
*
將參數(shù)標(biāo)記為可變參數(shù)。這允許函數(shù)接受任意數(shù)量的參數(shù),并將它們作為元組處理。
?? def add(*numbers): ?????? result = 0 ?????? for num in numbers: ?????????? result += num ?????? return result ?? result = add(2, 3, 4) ??
7. 關(guān)鍵字參數(shù):使用雙星號(hào)
**
將參數(shù)標(biāo)記為關(guān)鍵字參數(shù)。這允許函數(shù)接受任意數(shù)量的關(guān)鍵字參數(shù),并將它們作為字典處理。
?? def greet(**kwargs): ?????? for key, value in kwargs.items(): ?????????? print(f"{key}: {value}") ?? greet(name="Alice", age=30) ??
8. 作用域:變量在函數(shù)內(nèi)部和外部可能具有不同的作用域。函數(shù)內(nèi)部的變量通常是局部變量,而函數(shù)外部的變量通常是全局變量。
?? global_var = "global" ?? def my_func(): ?????? local_var = "local" ?????? print(global_var) ?????? print(local_var) ?? my_func() ??
函數(shù)是編寫可重用代碼的重中之重。要熟練掌握還要多加練習(xí)。