个人学习记录,若有侵权,请联系删除。

一、介绍

isort是一个实用的Python库,用于按照字母表顺序对imports进行排序,并自动按类型(标准库/第三方库/自己的模块/.......)划分部分。它为各种编辑器提供了命令行程序、python库和插件以快速对所有导入进行排序。它需要python3.7+才能运行,但也支持格式化python2代码。


(资料图)

先看官网提供的例子,了解isort的魅力之处

使用isort格式化后

二、安装

安装isort跟安装其他第三库的方式是一样,只需在命令行中输入:

三、使用

1、特定文件

示例:未使用isort时的代码文件learning.py

①方法一:在文件的路径下新建一个py文件,运行成功后即可将对应的文件导入模块进行排序

②方法二:在命令行使用命令

通过上述操作即可获取排序后的文件

2、递归目录

使用以下指令可以对目录下的所有文件导入模块进行排序

3、查看建议的更改而不修改文件

示例

四、vscode

在vscode进行配置,保存时即对导入模块进行排序

1、安装isort,方法见二

2、对vscode的setting进行配置

①使用快捷键Ctrl + Shift + P,搜索Preferences: Open Settings(UI)

②搜索OnSave,点击Edit in setting.json

③修改setting.json的配置

五、操作注释

在单个文件中配置isort流的最基本方法是操作注释。这些注释在解析过程中由isort解析器拾取和解释。

1、isort: skip_file:跳过整个文件

2、isort: skip 

如果与导入语句放在同一行(或a的延续内),isort将不会对此导入进行排序

3、isort: off

关闭isort解析。语句后的每一行都将保持不变地传递,直到注释或文件结束

4、isort: on

重新打开isort解析。这只有在文件中存在更高的注释时才有意义,允许在其他排序的导入块周围拥有未排序的导入块。

5、isort:split

告知isort当前排序部分已完成,并且所有将来的导入都属于新的排序分组。

6、dont-add-imports

不自动将导入添加到此文件,即使设置了--add-imports也是如此

7、dont-add-import

不自动添加特定的导入,即使--add-imports也是如此

8、isort -a

向所有文件添加导入

仅将导入添加到已导入的文件

9、isort --rm

从多个文件中删除导入

推荐内容