成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一個簡單的步驟讓你的 Python 代碼更干凈

開發 前端
你可以將這兩個文件拷貝到自己的項目根目錄中,然后執行一次 pre-commit install,這樣每次提交代碼的時候,都是干凈的代碼,是不是很方便?

說起來容易做起來難,我們都知道代碼可讀性非常重要,但是寫的時候總是隨心所欲,不考慮類型提示、import 排序、PEP8 規范。今天分享一個小技巧,通過一個簡單的步驟就可以讓你的 Python 代碼更干凈。

這就是 pre-commit:

圖片

可以讓你的代碼提交之前自動檢查是否符合你想要的規范。

使用之前,先 pip 安裝一下:

pip install pre-commit

然后在項目的根目錄下創建兩個文件:.pre-commit-config.yaml 和 pyproject.toml。

.pre-commit-config.yaml 文件內容如下:

exclude: _pb2\.py$
repos:
- repo: https://github.com/psf/black
rev: 22.3.0
hooks:
- id: black
args: [--skip-string-normalization]
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.0.1
hooks:
- id: check-docstring-first
- id: check-json
- id: check-merge-conflict
- id: check-yaml
- id: debug-statements
- id: end-of-file-fixer
- id: trailing-whitespace
- id: requirements-txt-fixer
- repo: https://github.com/pre-commit/pygrep-hooks
rev: v1.9.0
hooks:
- id: python-check-mock-methods
- id: python-use-type-annotations
- repo: https://github.com/pre-commit/mirrors-mypy
rev: "v0.910"
hooks:
- id: mypy
args:
[
--ignore-missing-imports,
--warn-no-return,
--warn-redundant-casts,
--disallow-incomplete-defs,
]
additional_dependencies: [types-all]
- repo: https://github.com/PyCQA/isort
rev: 5.9.3
hooks:
- id: isort
args: [--profile, black, --filter-files]

這里面配置了 black、mypy、check-docstring-first、isort 等工具,id 就是對應的工具,可以說這個配置文件基本上就夠用了。

在 .pre-commit-config.yaml 文件中,我們可以指定將使用哪些掛鉤,在 pyproject.toml 中,我們可以為這些單獨的鉤子指定參數。

pyproject.toml 文件內容如下:

[tool.black]
line-length = 88
target-version = ["py38"]

[tool.isort]
profile = "black"
multi_line_output = 3

這里配置了 black 和 isort 的相關配置。

然后執行在項目的根目錄執行 pre-commit install 命令,就可以安裝 pre-commit 插件。

然后每次更新代碼,提交代碼時,這些鉤子都會觸發,會自動執行如下操作:

排序 import

PEP8 的格式代碼

檢查您的 yaml 和 json 文件的正確性

類型檢查(如果你使用了類型提示)

圖片

最后

你可以將這兩個文件拷貝到自己的項目根目錄中,然后執行一次 pre-commit install,這樣每次提交代碼的時候,都是干凈的代碼,是不是很方便?

責任編輯:武曉燕 來源: Python七號
相關推薦

2020-07-15 08:37:11

JavaScript開發技術

2015-01-14 13:07:03

2024-09-25 14:16:35

2025-06-25 10:02:55

2020-06-01 07:41:52

Gmail郵箱郵件安全電子郵件

2023-08-11 08:39:36

工具AI

2021-03-28 16:55:11

Python工具鏈代碼

2020-05-07 10:18:06

JavaScript前端技術

2022-08-29 18:34:46

Pythonsubprocess系統

2017-12-07 15:05:50

全球互聯網創新峰會

2020-07-03 14:50:23

Python代碼編程語言

2022-04-19 09:18:56

Python代碼Linux

2023-03-15 15:54:36

Java代碼

2013-07-15 13:42:25

開發移動應用

2021-09-22 11:05:19

JS代碼前端

2018-03-30 09:00:00

LinuxUbuntu清理方法

2024-10-07 11:02:08

requests編程PythonAI

2020-05-07 17:03:49

Python編碼開發

2023-11-23 13:50:00

Python代碼

2017-09-08 12:15:54

Python代碼Pythonic
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 美女天天干天天操 | 免费看黄视频网站 | 免费视频久久久久 | 中文字幕日韩欧美 | 在线观看深夜视频 | 欧美一区二区三区在线播放 | 一区二区三区视频在线观看 | 亚洲精品视频二区 | 伊人精品在线 | 中文字幕不卡在线观看 | 奇米超碰在线 | 欧美激情va永久在线播放 | 观看av | 欧美一区精品 | 日韩成年人视频在线 | 91av亚洲| 久久免费电影 | 国产一区二区三区四区三区四 | 欧美久久天堂 | 日本人做爰大片免费观看一老师 | 久久婷婷国产麻豆91 | 国产精品视屏 | 伊人伊人 | 欧美一区二区三区久久精品 | 日日干夜夜操 | 粉嫩一区二区三区国产精品 | 久久一区二区三区电影 | 蜜桃特黄a∨片免费观看 | 亚洲高清在线观看 | 亚洲女人的天堂 | 99久久精品免费看国产免费软件 | 国产黄色大片网站 | 久久国产精品91 | 国产伦一区二区三区四区 | 91久久精品一区二区二区 | 日韩欧美中文字幕在线视频 | 久久久国产精品 | 日本一区二区电影 | 国产成人99久久亚洲综合精品 | 亚洲精品一区二区另类图片 | 亚洲精品久久久久avwww潮水 |