概述
背景
-
今天在看一个开源包,发现他的
requirements.txt
里面放着isort
包。
-
之前也在vscode的插件名单中,看到和这个相同名称的vscode插件,针对python语言的。但是我之前也没细看他到底是干嘛用的,我觉得vscode既然推荐了,而且还是Microsoft开发的,那肯定是优秀的包。索性就安装了。
那问题来了。这个包到底是用来干嘛的。可得好好研究研究了。
介绍
isort
包是将python模块中的import部分代码,按照PEP8的建议进行规范化。
PEP8建议python模块的import导入顺序如下:
- 标准库里面的模块要先导入。
- 第三方模块后导入。
- 自己的模块最后导入。
- 每一级,还需要按照字母表顺序进行排序。
案例
比如说,下面的代码就是你的代码。看起来乱糟糟的奥~,其中
my_lib
是你自己的包。os、sys
之类的是系python的标准库。third_party
是第三方的包。
假设这个代码文件名为example.py
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")
print("公众号: 统计学人")
这个时候,需要安装isort
,如果没有安装,运行pip install isort
进行安装。
然后在终端里面,输入:isort example.py
,遮掩就把你的py文件的导入包部分规范化了。就像是这样:
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")
大概就是这样:
使用注意事项
- 如果只是想针对特定的python脚本文件,只需要在终端里面这么用:
isort mypythonfile.py mypythonfile2.py
。 - 如果是想把这个文件夹下,所有的python脚本,全部规范化。那就:
isort .
或者isort **/*.py
。这两句是等效的。感觉最好是使用isort **/*.py
吧,使用isort .
需要开启globstar
。不一定会成功。 - 如果想看一个文件的前后变化,可以这么做:
isort mypythonfile.py --diff
。会显示文件改变的前后差异。 - 如果想在python里面使用,可以这么做:
import isort
isort.file("pythonfile.py")
或者这么做:
import isort
sorted_code = isort.code("import bnimport an")
如何在vscode里面使用
- 需要在python里面安装好
isort
.
pip install isort
- 在vscode的插件中安装好
isort
这个插件。(是的,没想到他俩名字都是一样的,功能也是一样)。
- 然后就可以使用了。
QA环节
Q: “我不是杠啊,就一个规范化python导入模块的包,有必要写一篇文章来介绍么?python规范化有必要吗“
A:其实就2个方面吧:
- 如果还是小白入门的话,其实不一定非要这么做,当你代码多起来的时候,项目大起来的时候,才需要这么做。
- 代码,就像是程序员的面子一样。见代码如见人。干净清爽的代码,让人看的是如沐春风~。
- 如果你的代码是需要给别人看,建议还是使用规范化一下。就是要这个脸????
参考链接
- https://pycqa.github.io/isort/
- https://www.cnblogs.com/poloyy/p/15549542.html
- https://muzing.top/posts/38b1b99e/
最后
有些包,可以不用,但是不能不知道。
就像是吃饭、看书一样
饭一顿吃完,下一顿还要吃;
书一本看完了,随着时间的流逝,会忘记。
但是吸收到的东西,都将带给我们一些能量。
这也是做这个系列的初衷。
ok
以上就是本文的全部内容了
如果你喜欢这个系列的文章
欢迎关注我,微信公众号:【统计学人】
下一篇文章
我们继续见面
最后
以上就是寂寞早晨为你收集整理的isort包介绍——可以不用 但不能不知道——python包推荐系列介绍使用注意事项如何在vscode里面使用最后的全部内容,希望文章能够帮你解决isort包介绍——可以不用 但不能不知道——python包推荐系列介绍使用注意事项如何在vscode里面使用最后所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复