在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
不仅可以自动格式化代码,还可以通过配置文件和编辑器集成实现更高级的功能。