日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 軟件

使用Ruff改善Python編程風格

來源: 責編: 時間:2023-12-04 09:19:50 273觀看
導讀譯者 | 布加迪審校 | 重樓Ruff簡介Ruff是一個用Rust編寫的運行速度極快的Python代碼檢查器和格式化器,旨在取代和改進Flake8、Black和isort等現有工具。它將性能提升了10倍至100倍,同時通過700多個內置規則和重新實現的

譯者 | 布加迪2Ww28資訊網——每日最新資訊28at.com

審校 | 重樓2Ww28資訊網——每日最新資訊28at.com

Ruff簡介

2Ww28資訊網——每日最新資訊28at.com

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

圖1.從頭開始檢查CPython代碼庫圖1.從頭開始檢查CPython代碼庫2Ww28資訊網——每日最新資訊28at.com

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

Ruff入門

我們可以使用PIP輕松安裝Ruff2Ww28資訊網——每日最新資訊28at.com

2Ww28資訊網——每日最新資訊28at.com

pip install ruff

為了測試Ruff運行起來有多容易多快速,我們可以使用DagHub存儲庫kingabzpro/Yoga-Pose-Classification。您可以克隆它,也可以使用自己的項目進行格式化。2Ww28資訊網——每日最新資訊28at.com

圖2. 項目結構圖2. 項目結構2Ww28資訊網——每日最新資訊28at.com

首先,我們將對項目運行代碼檢查。您也可以單個文件運行代碼檢查,只需把“.”換成文件位置。2Ww28資訊網——每日最新資訊28at.com

ruff check .

2Ww28資訊網——每日最新資訊28at.com

Ruff已經確定了9個錯誤和1個可修復的錯誤。為了修復這個錯誤,我們將使用--fix標志。2Ww28資訊網——每日最新資訊28at.com

ruff check --fix

正如您所,它修復了1個可修復的錯誤。2Ww28資訊網——每日最新資訊28at.com

2Ww28資訊網——每日最新資訊28at.com

要格式化項目,我們可以使用ruff format命令。2Ww28資訊網——每日最新資訊28at.com

$ ruff format .>>> 3 files reformatted

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

2Ww28資訊網——每日最新資訊28at.com

檢查和格式化Jupyter Notebooks

要在項目中使用Ruff for Jupyter Notebooks,您必須創建“ruff.toml”文件,并添加以下代碼2Ww28資訊網——每日最新資訊28at.com

extend-include = ["*.ipynb"]

您還可以對pyproject .toml”執行相同的操2Ww28資訊網——每日最新資訊28at.com

之后,重新運行命令,看看它是否對Jupyter notebook文件進行了更改。2Ww28資訊網——每日最新資訊28at.com

2個文件被重新格式化,我們有2個Notebook文件2Ww28資訊網——每日最新資訊28at.com

2Ww28資訊網——每日最新資訊28at.com

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

我們還通過再次運行check命令修復這些文件中的問題。2Ww28資訊網——每日最新資訊28at.com

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

最后的結果是驚人的。它在不破壞代碼的情況下進行了所有必要的更改。2Ww28資訊網——每日最新資訊28at.com

2Ww28資訊網——每日最新資訊28at.com

Ruff配置

很容易為Jupyter Notebooks配置Ruff,只需編輯“ruff.toml”文件來調整代碼檢查器和格式化器設置。請查看配置Ruff文檔以了解更多詳細信息。2Ww28資訊網——每日最新資訊28at.com

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用作預提交鉤子2Ww28資訊網——每日最新資訊28at.com

- 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 Action2Ww28資訊網——每日最新資訊28at.com

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

Ruff VSCode擴展

Ruff最討人喜歡的方面是VSCode擴展。它簡化了格式化和代碼檢查,因而不需要第三方擴展。只需在擴展市場上搜索Ruff即可安裝它。2Ww28資訊網——每日最新資訊28at.com

2Ww28資訊網——每日最新資訊28at.com

我已經配置了“setting.json”,以便在保存時格式化。2Ww28資訊網——每日最新資訊28at.com

結語

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

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

原文標題:Enhance Your Python Coding Style with Ruff,作者:Abid Ali Awan2Ww28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-26-37242-0.html使用Ruff改善Python編程風格

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: Spring Bean 命名各種方式,看這一篇就夠了

下一篇: 深入理解Go標準庫-http server的優雅關閉

標簽:
  • 熱門焦點
  • 一加Ace2 Pro真機揭曉 鈦空灰配色質感拉滿

    終于,在經過了幾波預熱之后,一加Ace2 Pro的外觀真機圖在網上出現了。還是博主數碼閑聊站曝光的,這次的外觀設計還是延續了一加11的方案,只是細節上有了調整,例如新加入了鈦空灰
  • 直屏旗艦來了 iQOO 12和K70 Pro同臺競技

    旗艦機基本上使用的都是雙曲面屏幕,這就讓很多喜歡直屏的愛好者在苦等一款直屏旗艦,這次,你們等到了。據博主數碼閑聊站帶來的最新爆料稱,Redmi下代旗艦K70 Pro和iQOO 12兩款手
  • 從 Pulsar Client 的原理到它的監控面板

    背景前段時間業務團隊偶爾會碰到一些 Pulsar 使用的問題,比如消息阻塞不消費了、生產者消息發送緩慢等各種問題。雖然我們有個監控頁面可以根據 topic 維度查看他的發送狀態,
  • 重估百度丨“晚熟”的百度云,能等到春天嗎?

    ©自象限原創作者|程心排版|王喻可2016年7月13日,百度云計算戰略發布會在北京舉行,宣告著百度智能云的正式啟程。彼時的會場座無虛席,甚至排隊排到了門外,在場的所有人幾乎都
  • 阿里大調整

    來源:產品劉有媒體報道稱,近期淘寶天貓集團啟動了近年來最大的人力制度改革,涉及員工績效、層級體系等多個核心事項,目前已形成一個初步的“征求意見版”:1、取消P序列
  • 消息稱小米汽車開始篩選交付中心:需至少120個車位

    IT之家 7 月 7 日消息,日前,有微博簡介為“汽車行業從業者、長三角一體化擁護者”的微博用戶 @長三角行健者 發文表示,據經銷商集團反饋,小米汽車目前
  • 華為和江淮汽車合作開發百萬元問界MPV?雙方回應來了

    8月1日消息,郭明錤今天在社交平臺發文稱,華為正在和江淮汽車合作,開發售價在100萬元的問界MPV,預計在2024年第2季度量產,銷量目標為上市首年交付5萬輛。
  • 支持aptX Lossless無損傳輸 iQOO TWS 1賽道版發布限時優惠價369元

    2023年7月4日,“無損音質,聲動人心”iQOO TWS 1正式發布,支持aptX Lossless無損傳輸,限時優惠價369元。iQOO TWS 1耳機率先支持端到端aptX Lossless無
  • 滴滴違法違規被罰80.26億 共存在16項違法事實

    滴滴違法違規被罰80.26億 存在16項違法事實開始于2121年7月,歷經一年時間,網絡安全審查辦公室對“滴滴出行”網絡安全審查終于有了一個暫時的結束。據“網信
Top 主站蜘蛛池模板: 怀集县| 饶河县| 淮阳县| 宁乡县| 莎车县| 工布江达县| 铁岭县| 宁晋县| 普兰县| 安福县| 宣化县| 禹城市| 大埔区| 偃师市| 小金县| 邯郸县| 彭泽县| 临武县| 四会市| 南部县| 静海县| 全南县| 田阳县| 民勤县| 安国市| 嵊州市| 万荣县| 武清区| 丰原市| 云安县| 泗水县| 花莲市| 醴陵市| 宜兰县| 通城县| 镶黄旗| 双峰县| 江城| 邳州市| 弥渡县| 徐水县|