Python中一行和多行import模块问题

yipeiwu_com6年前Python基础

Python 不建议用一行 import 所有模块,而是推荐用多行 import 来导入模块。更多的是出于操作便利性的原因,与代码本身无关:

更易于阅读

  • import fred 比 import barney, betty, wilma, fred, bambam, pebbles 更容易找。

更易于搜索

  • 能通过关键词马上 import fred 搜寻到位置,而 import barney, fred 不行。

更易于编辑:

  • 插入和移除更快捷;
  • 每行只声明一个模块,因此你不需要费力去找模块在哪;
  • 移动模块时只需移动整行即可;
  • 复制多个模块到其它 Python 文件时只需复制黏贴几行即可,不用在一行 import 语句里费力找你想要的模块。

多行 import 更易于维护

一旦模块有所修改,你能直接根据报错的行数知道是哪个模块出错了,而一行 import 会很麻烦;

如果漏掉或者添加模块,你还能通过行数和变更位置感知到。

总结

多行 import 更多地是为了方便编辑(复制、粘贴、删除)以及维护,而提到的易于搜索似乎无足轻重,因为多数人应该会把 import 写在 Python 文件开头,搜索文件前部应该是不难的。

相关文章

Python计算一个点到所有点的欧式距离实现方法

如下所示: distances = np.sqrt(np.sum(np.asarray(airportPosition - x_vals)**2, axis=1)) airport...

基于sklearn实现Bagging算法(python)

基于sklearn实现Bagging算法(python)

本文使用的数据类型是数值型,每一个样本6个特征表示,所用的数据如图所示: 图中A,B,C,D,E,F列表示六个特征,G表示样本标签。每一行数据即为一个样本的六个特征和标签。 实现Bag...

对Django 中request.get和request.post的区别详解

Django 中request.get和request.post的区别 POST和GET差异: POST和GET是HTTP协议定义的与服务器交互的方法。GET一般用于获取/查询资源信息,...

python 读取视频,处理后,实时计算帧数fps的方法

实时计算每秒的帧数 cap = cv2.VideoCapture("DJI_0008.MOV") #cap = cv2.VideoCapture(0) # Define the...

使用Python搭建虚拟环境的配置方法

python 的虚拟环境可以为一个 python 项目提供独立的解释环境、依赖包等资源,既能够很好的隔离不同项目使用不同 python 版本带来的冲突,而且还能方便项目的发布。 virt...