# `tabnanny` --- 偵測不良縮排

原始碼：Lib/tabnanny.py

目前現況是此模組打算以腳本方式被呼叫使用，但也可以將其引入於 IDE 中並使用下方敘述的 `check()` 函式。

備註

此模組所提供的 API 很有可能會在未來的發佈版本中有所變更，且有可能不具有向後相容性。

tabnanny.check(file_or_dir)

  如果 file_or_dir 是個目錄且並非符號鏈接 (symbolic link)，則會遞迴地在名為 file_or_dir 的目錄樹 (directory tree) 中不斷下行檢查所有 `.py` 檔案。如果 file_or_dir 是個一般 Python 原始檔案，則為其檢查空格相關問題。診斷訊息會以 `print()` 函式輸出至標準輸出 (standard output) 當中。

tabnanny.verbose

  標示是否要印出詳細訊息 (verbose message) 的旗標，若是以腳本方式呼叫的話則可以用 `-v` 選項來增加。

tabnanny.filename_only

  標示是否要只印出那些有空白相關問題檔案之檔名的旗標，若是以腳本方式呼叫的話則可以用 `-q` 選項來設為真值。

exception tabnanny.NannyNag

  當偵測到不良縮排時，此例外會被 `process_tokens()` 引發，會在 `check()` 中捕獲與處理。

tabnanny.process_tokens(tokens)

  此函式被 `check()` 用來處理由 `tokenize` 產生的標記 (token)。

也參考

`tokenize` 模組

  Python 原始程式碼的詞彙掃描器 (lexical scanner)。