衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Isort:自動整理 import 的超實用工具教程

科技綠洲 ? 來源:Python實用寶典 ? 作者:Python實用寶典 ? 2023-10-31 15:09 ? 次閱讀

isort 是一個Python的實用程序/庫,它會按字母順序?qū)?dǎo)入(import)的庫進(jìn)行排序,并自動分組。它提供多種使用方式,包括命令行、Python調(diào)用等。

它基于Python 3.6+實現(xiàn),但也支持格式化Python 2代碼。

圖片

在使用 isort 格式化你的 import 之前,你的代碼可能是長這樣的:

from my_lib import Object
import os
from my_lib import Object3
from my_lib import Object2
import sys
from third_party import lib15, lib1, lib2, lib3, lib4, lib5, lib6, lib7, lib8, lib9, lib10, lib11, lib12, lib13, lib14
import sys
from __future__ import absolute_import
from third_party import lib3
print("Hey")
print("yo")

使用 isort 格式化后的代碼是這樣的:

from __future__ import absolute_import import os
import sys from third_party import (lib1, lib2, lib3, lib4, lib5, lib6, lib7, lib8,
                        lib9, lib10, lib11, lib12, lib13, lib14, lib15)

from my_lib import Object, Object2, Object3
print("Hey")
print("yo")

雜亂無章的格式瞬間變得井然有序,可見這是一款多么優(yōu)秀的整理工具,下面就來介紹這個工具的安裝及使用過程,及進(jìn)階用法。

1.準(zhǔn)備

開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,可以訪問這篇文章:超詳細(xì)Python安裝指南 進(jìn)行安裝。

**(可選1) **如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda,它內(nèi)置了Python和pip.

**(可選2) **此外,推薦大家用VSCode編輯器,它有許多的優(yōu)點:Python 編程的最好搭檔—VSCode 詳細(xì)指南

請選擇以下任一種方式輸入命令安裝依賴

  1. Windows 環(huán)境 打開 Cmd (開始-運行-CMD)。
  2. MacOS 環(huán)境 打開 Terminal (command+空格輸入Terminal)。
  3. 如果你用的是 VSCode編輯器 或 Pycharm,可以直接使用界面下方的Terminal.
pip install isort

如果你需要讓他支持對 requirements.txt 的整理,請這樣安裝:

pip install isort[requirements_deprecated_finder]

2.使用 isort 整理你的python引用

isort 有2種使用方法,一種是從命令行直接針對py文件進(jìn)行整理、另一種是在Python內(nèi)導(dǎo)入 isort 進(jìn)行整理。

命令行整理

要在特定文件上運行 isort,請在命令行執(zhí)行以下操作:

isort mypythonfile.py mypythonfile2.py
# 或
python -m isort mypythonfile.py mypythonfile2.py

要對本文件夾遞歸進(jìn)行isort整理,請執(zhí)行以下操作:

isort .
# 或
python -m isort .

要查看更改建議的而不直接應(yīng)用它們,請執(zhí)行以下操作:

isort mypythonfile.py --diff

如果你要對項目自動運行isort,但是希望僅在未引入語法錯誤的情況下應(yīng)用更改:

isort --atomic .

(注意:這在默認(rèn)情況下是禁用的,因為它阻止了 isort 去整理不同版本的Python代碼。)

從Python內(nèi)部

import isort
isort.file("pythonfile.py")

或者:

import isort
sorted_code = isort.code("import bnimport an")

3. 智能平衡格式化

從 isort 3.1.0 開始,添加了對平衡多行導(dǎo)入的支持。啟用此選項后,isort 將動態(tài)地將導(dǎo)入長度更改為生成最平衡網(wǎng)格的長度,同時保持低于定義的最大導(dǎo)入長度。

開啟了平衡導(dǎo)入的格式化:

from __future__ import (absolute_import, division,
                        print_function, unicode_literals)

未開啟平衡的格式化:

from __future__ import (absolute_import, division, print_function,
                        unicode_literals)

要啟用此設(shè)置, 在你的配置設(shè)置 ** balanced_wrapping ** = **True或 通過命令行添加-e ** 參數(shù)執(zhí)行整理。

4.跳過某個import

要使 isort 忽略單個 import,只需在包含文本的導(dǎo)入行的末尾添加注釋 ** isort:skip ** ,如下:

import module # isort:skip

或者:

from xyz import (abc, # isort:skip
                 yo,
                 hey)

要使 isort 跳過整個文件,只需添加 ** isort:skip_file ** 到文件的開頭注釋中:

"""
my_module.py
Best module ever

isort:skip_file
"""

import b
import a

這個工具還是相當(dāng)方便的,尤其是針對一些雜亂無章、多年沉淀下來的項目代碼的 import 進(jìn)行整理的時候,它會變得非常香。

有需要的小伙伴可以趕快試一下。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 格式化
    +關(guān)注

    關(guān)注

    2

    文章

    39

    瀏覽量

    9144
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4827

    瀏覽量

    69055
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4807

    瀏覽量

    85040
  • import
    +關(guān)注

    關(guān)注

    0

    文章

    15

    瀏覽量

    1987
收藏 人收藏

    評論

    相關(guān)推薦

    matlab的實用工具命令

    數(shù)計算 Dsigma2 DSIGMA實用工具函數(shù) Dtimvec 離散時間響應(yīng)的自動定范圍算法 Exresp 取樣響應(yīng)函數(shù) Freqint Bode圖的自動定范圍算法 Freqint2 Nyquist
    發(fā)表于 09-22 15:56

    申請實用工具軟件版主!【申請通過】

    標(biāo)題:申請實用工具軟件區(qū)版主會員ID:jianqian1991年齡:20注冊日期:忘記了!申請日期:2010-04-27申請版塊:實用工具軟件特長及愛好:籃球,電影申請理由:無!每天都到這里下資料!問問題!總不能沒點貢獻(xiàn)!自學(xué)階段沒有技術(shù)!只想申請個
    發(fā)表于 04-27 09:10

    51單片機(jī)實用工具

    51單片機(jī)實用工具
    發(fā)表于 12-20 22:36

    LabVIEW實用工具***寶典課件

    不知道有沒有人上傳過《labview實用工具詳解》和寶典配合真的很贊,不過只有前幾章,我是從圖書館借的書,大家可以買一本
    發(fā)表于 01-25 22:40

    Labview實用工具詳解 代碼下載

    本帖最后由 tòrγㄚ 于 2015-7-8 10:10 編輯 Labview實用工具詳解 代碼下載
    發(fā)表于 06-30 15:43

    LabVIEW實用工具詳解簡版.pdf

    LabVIEW實用工具詳解簡版[url=https://bbs.elecfans.com/forum.php?mod=attachment&aid=MjcwNTU1fDk1ZTc1NWUyfDE0MzgwNDM5Nzl8MTM3MTg4fDUwMjI1MQ%3D%3D][/url]
    發(fā)表于 07-28 08:34

    labview實用工具詳解 配套程序

    labview實用工具詳解 配套程序
    發(fā)表于 10-22 01:04

    uartassist串口調(diào)試助手_實用工具

    uartassist串口調(diào)試助手_實用工具,感興趣的小伙伴們可以瞧一瞧。
    發(fā)表于 11-17 11:16 ?41次下載

    多種電子工程師實用工具大全

    本文主要介紹了多種電子工程師實用工具大全.
    發(fā)表于 06-27 08:00 ?139次下載
    多種電子工程師<b class='flag-5'>實用工具</b>大全

    電阻色環(huán)的識別實用工具應(yīng)用程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是電阻色環(huán)的識別實用工具應(yīng)用程序免費下載。
    發(fā)表于 11-12 08:00 ?5次下載
    電阻色環(huán)的識別<b class='flag-5'>實用工具</b>應(yīng)用程序免費下載

    UC3842頻率自動計算實用工具免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是UC3842頻率自動計算實用工具應(yīng)用程序免費下載。
    發(fā)表于 11-28 08:00 ?247次下載
    UC3842頻率<b class='flag-5'>自動</b>計算<b class='flag-5'>實用工具</b>免費下載

    windows啟動修復(fù)實用工具免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是windows啟動修復(fù)實用工具免費下載。
    發(fā)表于 12-10 08:00 ?1次下載
    windows啟動修復(fù)<b class='flag-5'>實用工具</b>免費下載

    LLC計算的實用工具應(yīng)用程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是LLC計算的實用工具應(yīng)用程序免費下載。
    發(fā)表于 03-31 08:00 ?91次下載
    LLC計算的<b class='flag-5'>實用工具</b>應(yīng)用程序免費下載

    關(guān)閉Win10自動更新的實用工具免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是關(guān)閉Win10自動更新的實用工具免費下載。
    發(fā)表于 11-02 08:00 ?1次下載
    關(guān)閉Win10<b class='flag-5'>自動</b>更新的<b class='flag-5'>實用工具</b>免費下載

    Isort自動整理import實用工具教程

    isort 是一個Python的實用程序/庫,它會按字母順序?qū)?dǎo)入(import)的庫進(jìn)行排序,并自動分組。它提供多種使用方式,包括命令行、Python調(diào)用等。 它基于Python 3.6+實現(xiàn)
    的頭像 發(fā)表于 10-21 10:38 ?779次閱讀
    <b class='flag-5'>Isort</b>:<b class='flag-5'>自動</b><b class='flag-5'>整理</b><b class='flag-5'>import</b>的<b class='flag-5'>超</b><b class='flag-5'>實用工具</b>教程
    订做百家乐官网桌子| 大发888古怪猴子| 百家乐官网桌保险| 皇冠网百家乐阿| 百家乐官网电投| 大发888官网免费58| 百家乐官网群shozo权威| 博彩一族| 百家乐筹码币方形| 百家乐官网的视频百家乐官网| 威尼斯人娱乐网反水| 百家乐官网透明发牌靴| 奇博国际娱乐网| 网上玩百家乐会出签吗| 百家乐官网最新破| 皇室国际娱乐城| 澳门百家乐小| 巴西百家乐官网的玩法技巧和规则| 爱马仕赌球| 百家乐路纸下| 天堂鸟百家乐官网的玩法技巧和规则 | 职业赌百家乐官网技巧| 德州扑克 教学| 正品百家乐游戏| 利高百家乐官网的玩法技巧和规则| 寿光市| 大发888亚洲游戏平台| 百家乐娱乐城会员| 百家乐官网赌场娱乐| 皇冠网上投注网| 百家乐桌布动物| 百家乐手机软件| 时时博百家乐官网娱乐城| 明珠娱乐| 威尼斯人娱乐网上百家乐| 百家乐鸿泰棋牌| 聚龍社百家乐官网的玩法技巧和规则 | 百家乐作| 百家乐官网赌场视频| 百家乐官网投注外挂| 乐百家国际娱乐城|