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

使用Ruff改善Python編程風格

譯文
開發 前端
Ruff的700多個內置代碼檢查(lint)規則已用Rust重新實現以提高速度,并提供了全面的代碼檢查和格式化,以強制執行干凈一致的Python代碼。

譯者 | 布加迪

審校 | 重樓

Ruff簡介

Ruff是一個用Rust編寫的運行速度極快的Python代碼檢查器和格式化器,旨在取代和改Flake8Blackisort等現有工具它將性能提升了10倍至100倍,同時通過700多個內置規則和重新實現的流行插件保持奇偶校驗。

圖1.從頭開始檢查CPython代碼庫圖1.從頭開始檢查CPython代碼庫

RuffPython 3.12兼容,支持現代 Python。它還提供自動修復支持、緩存和編輯器集成。Ruff一代碼庫友好,用于PandasFastAPI各大開源項目由于集速度、功能和可用性于一體Ruff代碼檢查、格式化和自動修復集成到統一的工具中,速度比現有的工具快幾個數量級。

Ruff入門

我們可以使用PIP輕松安裝Ruff

pip install ruff

為了測試Ruff運行起來有多容易多快速,我們可以使用DagHub存儲庫kingabzpro/Yoga-Pose-Classification。您可以克隆它,也可以使用自己的項目進行格式化。

圖2. 項目結構圖2. 項目結構

首先,我們將對項目運行代碼檢查。您也可以單個文件運行代碼檢查,只需把“.”換成文件位置。

ruff check .

Ruff已經確定了9個錯誤和1個可修復的錯誤。為了修復這個錯誤,我們將使用--fix標志。

ruff check --fix

正如您所,它修復了1個可修復的錯誤。

要格式化項目,我們可以使用ruff format命令。

$ ruff format .
>>> 3 files reformatted

Ruff代碼檢查器和格式化器對代碼進行了大量更改。但是我們為什么需要這些工具答案很簡單——它們有利于執行編碼標準和約定。因此,您和您的團隊可以專注于代碼的重要方面。此外,它們有助于提高代碼的質量、可維護性和安全性。

檢查和格式化Jupyter Notebooks

要在項目中使用Ruff for Jupyter Notebooks,您必須創建“ruff.toml”文件,并添加以下代碼

extend-include = ["*.ipynb"]

您還可以對pyproject .toml”執行相同的操

之后,重新運行命令,看看它是否對Jupyter notebook文件進行了更改。

2個文件被重新格式化,我們有2個Notebook文件

$ ruff format .
>>> 2 files reformatted, 3 files left unchanged

我們還通過再次運行check命令修復這些文件中的問題。

$ ruff check --fix .
>>> Found 51 errors (6 fixed, 45 remaining).

最后的結果是驚人的。它在不破壞代碼的情況下進行了所有必要的更改。

Ruff配置

很容易為Jupyter Notebooks配置Ruff,只需編輯“ruff.toml”文件來調整代碼檢查器和格式化器設置。請查看配置Ruff文檔以了解更多詳細信息。

target-version = "py311"
extend-include = ["*.ipynb"]
line-length = 80

[lint]
extend-select = [
 "UP", # pyupgrade
 "D", # pydocstyle
]

[lint.pydocstyle]
convention = "google"

GitHub Action和預提交鉤子

發人員和團隊可以通過“ruff -pre-commit將Ruff用作預提交鉤子

- repo: https://github.com/astral-sh/ruff-pre-commit
 # Ruff version.
 rev: v0.1.5
 hooks:
 # Run the linter.
 - id: ruff
 args: [ --fix ]
 # Run the formatter.
 - id: ruff-format

它還可以通過“ruff-action”用作GitHub Action

name: Ruff
on: [ push, pull_request ]
jobs:
 ruff:
 runs-on: ubuntu-latest
 steps:
 - uses: actions/checkout@v3
 - uses: chartboost/ruff-action@v1

Ruff VSCode擴展

Ruff最討人喜歡的方面是VSCode擴展。它簡化了格式化和代碼檢查,因而不需要第三方擴展。只需在擴展市場上搜索Ruff即可安裝它。

我已經配置了“setting.json”,以便在保存時格式化。

結語

Ruff提供了速度飛快代碼檢查和格式化,使Python代碼更干凈、更一致。Ruff從Flake8、isort和pyupgrade等流行工具中汲取靈感,通過Rust重新實現700多個內置規則來提高性能,從而實現了一套全面的編碼最佳實踐。精挑細選的規則集專注于捕捉錯誤和關鍵的風格問題,又不過度挑剔。

與預提交鉤子、GitHub Actions和VSCode等編輯器無縫集成使用戶可以將Ruff輕松整合到現代Python工作流中。無與倫比的速度和精心設計的規則集使Ruff成為重視快速反饋、干凈代碼和團隊順暢協作的Python開發人員的必備工具。Ruff通過將強大的功能與出色的性能相結合,為Python代碼檢查和格式化設了新的標準。

原文標題:Enhance Your Python Coding Style with Ruff,作者:Abid Ali Awan

責任編輯:華軒 來源: 51CTO
相關推薦

2020-06-02 08:54:47

編程語言C語言程序員

2017-02-13 13:14:07

2011-07-27 14:10:43

javascript

2020-07-17 19:36:26

Python編程代碼

2017-01-12 14:55:50

JavaScript編程

2015-09-22 10:04:38

GoogleJava編程

2013-07-10 11:32:57

編碼風格

2023-04-24 13:29:46

2023-08-14 14:04:14

JavaScript函數式編程

2017-12-14 14:32:30

.Net內存代碼

2012-03-22 17:16:24

Java

2021-05-28 09:10:40

JavaScript性能GPU

2010-03-16 16:47:58

Java編程語言

2021-05-28 05:34:06

Golang語言編程

2020-11-23 15:49:28

物聯網

2020-05-06 07:32:05

物聯網IOT企業

2020-12-01 06:53:37

GPUJavaScript

2011-07-10 15:49:34

C++

2013-07-23 15:11:41

流行編程風格

2021-03-18 13:00:51

JupyterPython編程語言
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美视频在线一区 | 日本不卡一区二区三区在线观看 | 狠狠av | 亚洲天堂精品一区 | 91美女在线 | 男女视频在线免费观看 | 亚洲成人蜜桃 | 亚洲午夜小视频 | 国产做a爱片久久毛片 | 色婷婷久久久亚洲一区二区三区 | 久久久国产一区 | 又黄又色| 日韩二区三区 | 精品久久国产视频 | 国产成人艳妇aa视频在线 | 久久精品国产一区二区三区 | 黄色日本片 | 亚洲国产一区二区三区四区 | 香蕉大人久久国产成人av | 日韩电影在线一区 | 国产一级大片 | 亚洲国产成人精品女人久久久野战 | 四虎影院新网址 | 国产精品99久久久久 | 久久久久久黄 | 国产精品久久久久久妇女6080 | 综合九九| 国产高清视频 | 国产专区在线 | 一二三在线视频 | 日本亚洲欧美 | 精品国产乱码久久久久久丨区2区 | 久久99精品国产99久久6男男 | 国产日韩精品一区 | 色视频网站 | 91最新在线视频 | 亚洲日韩中文字幕一区 | 国产精品视频不卡 | 亚洲一二三视频 | 免费中文字幕日韩欧美 | 老头搡老女人毛片视频在线看 |