python模块管理框架

 

 

python下包管理框架记录

  

  测试环境:ubuntu16.04下的~/目录下。

 

 一、我们的测试目录结构如下:

  当前目录在:~/chap7,使用tree命令看到当前目录下的文件及文件夹结构如下:

  

  其中三个__init__.py为空文件,

  simpledatasetloader.py里定义一个类:

  

  simplepreprocessor.py里定义另一个类:

  

  在根文件knn.py中导入格式如下:

  

  在knn.py这样配置,我们希望from包直接导入包中模块的类名。

 

 二、模块与包

  模块:实质上就是一个以.py结尾的文件,可以被其他py文件调用。

  包:即包所在的文件夹里包含一个__init__.py的文件,即在这里的pyimagesearch、datasets、preprocessing分别为三个包。

 

 三、运行测试

  运行:python knn.py显示结果如下:

  

  原因是,我们没有配置__init__.py文件。

  我们在python中,from sklearn.preprocessing import LabelEncoder,则可以直接从目录包中导入类名,

从sklearn的git目录下的neighbors的__init__.py看配置如下:

  

  因此,我们将preprocessing文件夹下的__init__.py添加如下:

  

  将datasets文件夹下的__init__.py添加如下:

  

  保存后,此时,再次执行python knn.py即可正确显示如下:

  

  因此,在以包为管理方式,来配置不同的包管理时,可参考python中某个包的配置方式来配置。

  如果在datasets下还有其它模块需要导入,可按此方式即可。

 

转载于:https://www.cnblogs.com/paladinzxl/p/9506357.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值