在Ubuntu系統中統一Python代碼風格,可以使用 black
這個強大的代碼格式化工具。以下是詳細的步驟和建議:
首先,你需要安裝 black
??梢酝ㄟ^ pip
來安裝:
pip install black
格式化單個文件:
black script.py
格式化整個項目:
black .
檢查代碼格式:
black --check .
顯示格式化差異:
black --diff .
你可以在項目根目錄下創建一個 pyproject.toml
文件來配置 black
的行為。例如:
[tool.black]
line-length = 88
target-version = ['py37', 'py38']
include = '\.pyi?$'
extend-exclude = '''
# 添加你想忽略的文件(\.eggs| \.git| \.mypy_cache| build| dist)
'''
在 VSCode 的 settings.json
文件中添加以下內容:
{
"python.formatting.provider": "black",
"editor.formatOnSave": true,
"[python]": {
"editor.defaultFormatter": "ms-python.python"
}
}
在 PyCharm 的設置中,導航到 Tools > External Tools
,添加 Black 作為外部工具:
Name: Black
Program: black
Arguments: $FilePath$
Working directory: $ProjectFileDir$
使用 pre-commit
鉤子可以確保每次提交前都自動格式化代碼:
安裝 pre-commit
:
pip install pre-commit
創建 .pre-commit-config.yaml
文件:
repos:
- repo: https://github.com/psf/black
rev: 22.3.0
hooks:
- id: black
language_version: python3
安裝并運行 pre-commit install
:
pre-commit install
多種工具組合使用:
在 pyproject.toml
中配置多個工具:
[tool.black]
line-length = 88
target-version = ['py38']
[tool.isort]
profile = "black"
multi_line_output = 3
[tool.flake8]
max-line-length = 88
extend-ignore = "E203"
通過以上步驟,你可以在 Ubuntu 系統中統一 Python 代碼風格,提高代碼的可讀性和一致性。使用 black
不僅可以自動格式化代碼,還可以通過配置文件和編輯器集成實現更高級的功能。