首页 > 编程语言 >有效地对 Python 模块导入进行排序

有效地对 Python 模块导入进行排序

时间:2022-09-24 11:45:00浏览次数:87  
标签:文件 Python 导入 isort 模块 排序

有效地对 Python 模块导入进行排序

在本文中,我们将了解如何使用 isort 库来自动安排 Python 模块的导入。

随着 Python 项目的扩展,您开始拥有越来越多的文件,每个文件都包含更多能够执行更多操作的代码行,以及您导入的更多依赖项。
在研究过程中,通常一次导入一个库,这使得导入部分杂乱无章,并且经常无法快速更改。
此外,在工程团队中工作时,每位工程师都倾向于以自己喜欢的方式构建和组织导入,这会导致同一存储库中的多个文件版本相互覆盖。 isort 提供了一种在 Python 代码中安排导入的有条不紊的方法,可以简单地解决这个问题。我们将需要 Python 库 isort 来继续学习本课程。如果您还没有安装它,请打开 Windows 的“命令提示符”并键入以下代码来执行此操作:

点安装等

什么是异类?

Python 的 isort 函数和库自动按字母顺序排列 Python 模块的导入,同时按类型和部分对它们进行分类。除了 CLI 工具和 Python 库之外,它还包含多个代码编辑器的插件,包括 VS Code、Sublime 等。

代码示例

一些未排序的python代码:

 进口熊猫  
  
 进口我们  
 导入系统  
  
 导入 numpy  
  
 从 sklearn.linear_model 导入线性回归  
 从 sklearn.linear_model 导入岭  
  
 从 sklearn.linear_model 导入 ElasticNet

一旦我们在一个目录中拥有一个或多个 Python 文件,就很容易使用 isort 对模块导入进行排序。

打开命令行或终端并导航到包含 Python 文件的目录。

如果您只有一个文件要对模块导入进行排序(在我们的例子中是 主文件 ),只需运行:

排序main.py

重新格式化的示例 Python 文件应如下所示:

 进口我们  
 导入系统  
  
 导入 numpy  
 进口熊猫  
 从 sklearn.linear_model 导入 ElasticNet、LinearRegression、Ridge

如果要对多个 Python 文件或整个 Python 项目中的模块导入进行排序,只需运行:

排序。

isort 将自动查找所有 Python 文件,并对目录中所有 Python 文件中的模块导入进行排序。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明

本文链接:https://www.qanswer.top/38978/34202411

标签:文件,Python,导入,isort,模块,排序
From: https://www.cnblogs.com/amboke/p/16725264.html

相关文章

  • 大量的 Python 阅读
    Pythonlogobywww.python.org,GPL,via维基共享资源大量的Python阅读来自ThePragmaticProgrammers的Python内容https://pragprog.com/newsletter/Pyt......
  • python 3.10 unicode \U 转中文
    python3.10unicode\U转中文`str="\u574f\u86cb"print(str.encode('utf-8').decode('unicode_escape'))importjsoncc=json.dumps(str).encode('utf-8').decode(......
  • 希尔排序
    插入排序存在的问题数组arr={2,3,4,5,6,1}这时需要插入的数1(最小),这样的过程是:{2,3,4,5,6,6}{2,3,4,5,5,6}{2,3,4,4,5,6}{2,3,3,4,5,6}{2,2,3,4,5,6}{1,2......
  • go-冒泡排序-练习
    packagemainimport"fmt"funcmain(){ nums:=[]int{1,5,4,3,2,9,8,7,6,0}/* //第一轮 fori:=0;i<len(nums)-1;i++{ ifnums[i]>nums[i+1]{ nums[i],nums......
  • python-json
    pythonjson处理json写入json文件点击查看代码importjsonjson_data={"name":"Tom","age":18,"score":{"math":98,"chines......
  • go中使用map的键排序
    packagemainimport("fmt""sort")funcmain(){//待排序队列varstuScore=map[int]string{1:"ee",5:"cc",4:"ff",9:"qq",3:"aa",2:"bb"}fmt.Println(stu......
  • 插入排序
    简介插入式排序属于内部排序法,是对于欲排序的元素以插入的方式找寻该元素的适当位置,以达到排序的目的插入排序(InsertionSorting)的基本思想是:把n个待排序的元素看成为......
  • go中使用map的值排序
    packagemainimport( "fmt" "sort")funcmain(){ //待排序队列 varstuScore=map[string]int{"ee":20,"cc":90,"ff":70,"qq":40,"aa":79,"bb":30} //创建......
  • dockerfile打包Python项目环境镜像
    1.dockerfile编写FROMubuntu:latestMAINTAINERjiangmooENVDEBIAN_FRONTEND=noninteractiveENVLANGC.UTF-8RUNsed-i"s/security.debian.org/mirrors.aliyu......
  • python中round函数的一个小坑——奇进偶弃
    python中round函数的一个小坑——奇进偶弃 >>>round(3.1415,3)3.142>>>round(4.1415,3)4.141 >>>round(10.5)10>>>round(11.5)12 ......