Skip to content
ccckmit edited this page Dec 4, 2024 · 1 revision

以下是 第2章:Python 中的函數 的內容草稿:


第2章:Python 中的函數

2.1 函數的基本概念

函數是編程中的基本構建塊,將一組語句封裝在一起,實現特定的功能。函數能夠提高代碼的重用性和可讀性,使得程序的結構更清晰。通過使用函數,我們可以將複雜的問題分解為更小、更易於管理的部分。

在數學中,函數是一種將輸入(自變量)映射到輸出(因變量)的關係。在編程中,函數可以接收參數並返回值,並且可以在程序的不同部分被調用。

2.2 Python 中的函數定義

在 Python 中,函數的定義使用 def 關鍵字,後面跟隨函數名和參數列表。基本的函數定義格式如下:

def 函數名(參數1, 參數2, ...):
    # 函數體
    return 返回值

例子:

def add(a, b):
    return a + b

result = add(3, 5)
print(result)  # 輸出: 8

在這個例子中,我們定義了一個名為 add 的函數,它接收兩個參數 ab,並返回它們的和。

2.3 函數參數與返回值

在 Python 中,函數可以接受多種類型的參數,包括位置參數、關鍵字參數、默認參數和可變參數:

  1. 位置參數:最常見的參數類型,根據位置傳遞。
  2. 關鍵字參數:使用關鍵字進行傳遞,可以提高可讀性。
  3. 默認參數:在定義函數時指定默認值,如果調用時未提供該參數,則使用默認值。
  4. 可變參數:使用 *args**kwargs 接收不定數量的位置和關鍵字參數。

例子:

def greet(name, greeting="Hello"):
    return f"{greeting}, {name}!"

print(greet("Alice"))           # 輸出: Hello, Alice!
print(greet("Bob", "Hi"))       # 輸出: Hi, Bob!

def sum_all(*args):
    return sum(args)

print(sum_all(1, 2, 3, 4))      # 輸出: 10

在這個例子中,greet 函數展示了默認參數的用法,而 sum_all 函數展示了可變參數的用法。

2.4 匿名函數(Lambda 表達式)

在 Python 中,我們可以使用 lambda 關鍵字來定義匿名函數(或 Lambda 函數)。這種函數沒有名稱,通常用於簡單的運算或作為其他函數的參數。

Lambda 函數的基本語法如下:

lambda 參數: 表達式

例子:

# 定義一個 Lambda 函數
square = lambda x: x ** 2

print(square(5))  # 輸出: 25

# 在排序中使用 Lambda 函數
points = [(1, 2), (3, 1), (5, -1)]
points_sorted = sorted(points, key=lambda point: point[1])  # 按 y 值排序
print(points_sorted)  # 輸出: [(5, -1), (3, 1), (1, 2)]

在這個例子中,我們定義了一個計算平方的 Lambda 函數,並在排序中用 Lambda 函數作為鍵函數。

小結

本章介紹了 Python 中函數的基本概念,包括函數的定義、參數和返回值的使用,以及匿名函數(Lambda 表達式)的特性。掌握這些基本概念將為後續的函數式編程學習奠定堅實的基礎。隨著對函數的深入了解,讀者將能夠編寫更加模組化和可重用的代碼。


這是第2章的內容草稿。如果有任何建議或需要調整的地方,請隨時告訴我!

Clone this wiki locally