在python中如何建立一个自己的包
作者:南波兔不写巴哥 发布时间:2022-12-27 12:42:25
python如何建立一个自己的包
一些概念
模块:我们写的每个py都是一个模块
包:模块的集合,就是一个包,通常包和directory的区别在于是否有__init__.py
init.py:它可以空着,标识该目录为包;也可以写一些方法和变量(不建议写);还可以用__all__=[""]来限制 from xxx import * 引入哪些模块
如何建立(示例)
目标: 我们要建立ansemb包,作为一个工具包,供其他py依赖,是以下的结构
其中test要引入同目录下的test2
其中dataset中不能暴露test2
|--try
|--ansemb
|--dataset
|--test.py
|--test2.py
|--__init__.py
|--config.py
|--__init__.py
首先,我们建立 文件夹ansemb;创建config.py;创建空的__init__.py
然后,就创建 文件夹dataset;创建test2.py;创建__init__.py,在其中键入__all__=["test"],进行约束
之后来实现test引入test2,这里使用相对路径进行引入
导入自己写好的python包
1、建立自己的setup.py文件
2、将setup.py文件和写好的python包放到anaconda根目录下
3、在根目录下cmd运行python setup.py install
4、会在根目录下生成build文件,内部有lib->(自己写的python包)
实例
我导入的是这篇论文中的代码
《Deep Spatio-Temporal Residual Networks for Citywide Crowd Flows Prediction》
setup.py长这样:
我将导入deepst文件中的包,以方便在后续运行中的调用
先将其中deepst文件和setup.py文件放入我anaconda安装的路径下
(这里我创建了虚拟环境,所以直接装在虚拟环境里面)
在此路径下cmd 运行
python setup.py install
则会出现一个build文件
此时表示导入成功
来源:https://blog.csdn.net/qq_34687559/article/details/122480540


猜你喜欢
- 本文实例讲述了python使用mailbox打印电子邮件的方法。分享给大家供大家参考。具体如下:该范例在linux下使用import mai
- 我们之前写的代码都没有对前端input框输入的数据做验证,我们今天来看下,如果做form表单的数据的验证在views文件做验证首先用文字描述
- 1.软件环境??Windows10 教育版64位Python 3.6.3PyAV 8.0.32.问题描述??在提取视频文件的关键内容时,手动
- 随机生成四位数验证码,包括汉字,数字,英文大小写。1.Servlet类package servlet;import java.awt.Bas
- 1.Vue指令Vue提供自定义实现指令的功能, 和组件类似,可以是全局指令和局部指令,详细可以参见vue官网自定义指令一节(https://
- 方法一:import osimport cv2 as cvimport numpy as np# 读取yuv420p的一帧文件,并转化为pn
- 按照某一列排序d = {'A': [3, 6, 6, 7, 9], 'B': [2, 5, 8, 0, 0]
- 一、序言在csdn上有很多纯copy,这给我复现带来了很大的麻烦,所以我想根据我的个人找截图的经历记录下来,给未来的自己看,免得忘记了云云。
- 1 create table test(coltest varchar(20))2 实现这一功能 的 sql 语句 s
- 本文实例讲述了python进程池实现的多进程文件夹copy器。分享给大家供大家参考,具体如下:应用:文件夹copy器(多进程版)import
- 使用setStyleSheet方法修改得到自己想要的字体,大小,颜色self.lab = QLabel("标签字体大小颜色&quo
- 1.新建site-packages目录,进入到site-packages目录下;2.在site-packages目录下执行pip freez
- 相信有些小伙伴,在没接触py之前,肯定都是有所准备的,想学语言由来已久,拿小编来说,一直趁着空挡就开始找课程学习,用记下学习历程,还会向一些
- 数据合并是数据处理过程中的必经环节,pandas作为数据分析的利器,提供了四种常用的数据合并方式,让我们看看如何使用这些方法吧!1.conc
- /************************************************************ * Code
- 先来了解一下收/发邮件有哪些协议:SMTP协议 SMTP(Simple Mail Transfer Protocol),即简单邮件传输协议。
- 一直觉得wxpython占用内存比较多,在工作中写的一些小程序应用,一对比其它的小程序,发现内存相差确实有点大。测试了下QT框架import
- 在进行Web的交互设计中,颜色信息的传达也是不可或缺的一部分。我们常会发现许多“灰色”的应用,他们的出现总是不动声色而又恰如其分,维持了整个
- 改变图像大小意味着改变尺寸,无论是单独的高或宽,还是两者。也可以按比例调整图像大小。这里将介绍resize()函数的语法及实例。语法函数原型
- 前言在日常工作中,可能需要结合网上现在的一些API或者公司提供的数据接口来得到相应的数据或者实现对应的功能。因此API的调用和数据接口的访问