Python 的 pass 是空語句,不執行任何操作,主要用於語法上需要陳述式但邏輯上不需任何動作的場合。本文說明用途、對比 C/C++ 寫法並提供實例。
IndentationErrorif (true)
; // 空陳述式
else
{} // 空區塊
if True:
pass # 不做任何事
else:
print("do something.")
>>> def nullfunc():
... pass
...
>>> nullfunc()
>>> # 正常執行,無輸出
class Placeholder:
pass # 稍後動態添加屬性/方法
p = Placeholder()
p.attr = 123 # 動態綁定
class BaseHandler:
def handle(self, request):
pass # 子類別必須覆寫
def cleanup(self):
pass # 可選覆寫
try:
risky_operation()
except SpecificError:
pass # 明確忽略,建議加註解說明原因
for item in items:
if condition(item):
process(item)
else:
pass # 明確表示「不處理」
Python 3.6+ 也可用 ...(Ellipsis)作為佔位,語意相同但更常用於型別提示或 NumPy 切片:
def todo(): ...
def func(x: list[int]) -> list[int]: # 型別提示中
return x[...]
# ❌ 錯誤:if 區塊不能為空
if True:
# IndentationError: expected an indented block
# ✅ 正確:用 pass 佔位
if True:
pass
pass 是 Python 語法完整性的守護者。善用 pass 可讓程式碼結構清晰、預留擴充點、明確表達「刻意不處理」的意圖。配合註解說明原因,能提升程式碼可維護性。