Python 中的 `def` 用於定義類中的方法或全局函數

在 Python 中,`def` 是一個關鍵字,用於定義函數或類中的方法。它不僅可以用於定義全局函數,還可以用於定義類中的方法。隨著 Python 語言的演進,這一語法在 2025 年的最新版本中保持了穩定性和一致性。

## 什麼是函數?

函數是一種封裝的代碼塊,可以在程序中重複使用。它可以接受參數,並返回一個值。函數的定義讓代碼更加模組化,提高了可讀性和可維護性。以下是一些基本概念:

– **全局函數**:可以在任何地方調用的函數。
– **類中的方法**:只能在類的實例中調用的函數。

## 如何定義全局函數?

在 Python 中,可以使用 `def` 關鍵字來定義全局函數。以下是一個簡單的示例:

“`python
def add(x, y):
return x + y

result = add(2, 3)
print(result) # 輸出:5
“`

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

## 如何定義類中的方法?

類中的方法與全局函數類似,但它們必須在類的上下文中被調用。以下是一個示例:

“`python
class MyClass:
def add(self, x, y):
return x + y

obj = MyClass()
result = obj.add(2, 3)
print(result) # 輸出:5
“`

在此示例中,`add` 方法是 `MyClass` 類的一部分,它接受兩個參數並返回它們的和。

## 錯誤排除

在使用 `def` 定義函數或方法時,常見的錯誤包括:

– **忘記縮進**:在 Python 中,縮進是語法的一部分,確保函數內的代碼適當縮進。
– **未定義的參數**:在調用函數時,確保傳入的參數數量與函數定義相符。

## 延伸應用

1. **Lambda 函數**:如果需要一個簡單的函數,可以考慮使用 Lambda 表達式。
2. **高階函數**:學習如何將函數作為參數傳遞到其他函數中,這可以提高代碼的靈活性。

這篇文章是對 Python 中 `def` 函數的簡單介紹,若想了解更多詳細內容,可以參考 [vocus.cc 的 Python 教學](https://vocus.cc) 或 [miner.tw 的進階課程](https://miner.tw)。

## 常見問題解答 (Q&A)

### Q1: Python 中的 `def` 可以定義哪些類型的函數?
A1: `def` 可以用來定義全局函數和類中的方法,並且它可以接受任意數量的參數。

### Q2: 如何在類中使用 `def` 定義方法?
A2: 在類內部使用 `def` 定義方法時,第一個參數通常是 `self`,它代表類的實例。

### Q3: 使用 `def` 定義的函數如何返回多個值?
A3: 可以使用元組來返回多個值,例如:`return a, b`。

Categorized in:

Tagged in: