day 5 模块发布安装
1.模块的位置
现在当前路径查找,再到系统路径/usr/lib/python3.5/查找,再到其他系统路径查找
2.模块发布
1)模块目录结构
Msg
├── __init__.py
├── recvmsg.py
└── sendmsg.py
2)编辑setup.py文件
py_modules需指明所需包含的py文件
from distutils.core import setup setup(name="dongGe", version="1.0", description="dongGe's module", author="dongGe", py_modules=['Msg.sendmsg','Msg.recvmsg'])
.
├── Msg
│ ├── __init__.py
│ ├── recvmsg.py
│ └── sendmsg.py
└── setup.py
3) .构建模块
python setup.py build
### 构建后目录结构
.
├── build
│ └── lib
│ └── Msg
│ ├── __init__.py
│ ├── recvmsg.py
│ └── sendmsg.py
├── Msg
│ ├── __init__.py
│ ├── recvmsg.py
│ └── sendmsg.py
└── setup.py
4)生成发布压缩包
python setup.py sdist
## 打包后,生成最终发布压缩包dongGe-1.0.tar.gz , 目录结构
.
├── build
│ └── lib
│ └── Msg
│ ├── __init__.py
│ ├── recvmsg.py
│ └── sendmsg.py
├── dist
│ └── dongGe-1.0.tar.gz
├── MANIFEST
├── Msg
│ ├── __init__.py
│ ├── recvmsg.py
│ └── sendmsg.py
└── setup.py
5)压缩包复制到其他地方可以使用
dongGe-1.0.tar.gz
python@ubuntu:~/pythonS6/python基础10/03-发布模块$ cp dist/dongGe-1.0.tar.gz ~/Desktop/
python@ubuntu:~/pythonS6/python基础10/03-发布模块$ cd ~/Desktop/
python@ubuntu:~/Desktop$ ls
dongGe-1.0.tar.gz
3.模块的安装
1)下载模块
python@ubuntu:~/Desktop$ ls
dongGe-1.0.tar.gz
2)解压
python@ubuntu:~/Desktop$ tar -xvf dongGe-1.0.tar.gz
.
├── dongGe-1.0
│ ├── Msg
│ │ ├── __init__.py
│ │ ├── recvmsg.py
│ │ └── sendmsg.py
│ ├── PKG-INFO
│ └── setup.py
└── dongGe-1.0.tar.gz
3)PKG-INFO文件?? 基本信息
python@ubuntu:~/Desktop$ cat dongGe-1.0/PKG-INFO
Metadata-Version: 1.0
Name: dongGe
Version: 1.0
Summary: dongGe's module
Home-page: UNKNOWN
Author: dongGe
Author-email: UNKNOWN
License: UNKNOWN
Description: UNKNOWN
Platform: UNKNOWN
4) 进入文件夹,执行命令python setup.py install
python@ubuntu:~/Desktop/dongGe-1.0$ sudo python3 setup.py install running install
running build
running build_py
running install_lib
running install_egg_info
Removing /usr/local/lib/python3.5/dist-packages/dongGe-1.0.egg-info
Writing /usr/local/lib/python3.5/dist-packages/dongGe-1.0.egg-info #安装成功
5)引入模块。执行验证
In [3]: import Msg In [4]: Msg.sendmsg.test1()
--sendmsg-test1---
day 5 模块发布安装的更多相关文章
- python的异常处理和模块发布安装
1.完整的异常处理 异常处理能够保证程序出错是也能够完整运行,不会应为bug而停止运行,这里介绍下获取异常的完整格式 try: num = int(input("输入整数:")) ...
- nodejs模块发布及命令行程序开发
前置技能 npm工具为nodejs提供了一个模块和管理程序模块依赖的机制,当我们希望把模块贡献出去给他人使用时,可以把我们的程序发布到npm提供的公共仓库中,为了方便模块的管理,npm规定要使用一个叫 ...
- python: 模块发布
一.准备发布 1.为模块文件创建一个文件夹,并将模块文件复制到这个文件中(一般,文件夹的名字和模块的名字一样) 2.在文件夹中创建一个名为『setup.py』的文件,内容如下: #encoding:u ...
- 搭建rtmp直播流服务之1:使用nginx搭建rtmp直播流服务器(nginx-rtmp模块的安装以及rtmp直播流配置)
欢迎大家积极开心的加入讨论群 群号:371249677 (点击这里进群) 一.方案简要 首先通过对开发方案的仔细研究(实时监控.流媒体.直播流方案的数据源-->协议转换-->服务器--&g ...
- python模块之导入包及模块发布
1.导入包(不常用的方法) 在使用python的包时,有时候想直接导入包名,然后通过包名来调用模块,例如: temp为我们创建的一个包,如果我们想通过下面的方式进行导入模块中的方法,将会出错 impo ...
- python 模块发布及使用
将模块(此处名为nester)写好后,与setup.py放入同一个文件夹中: //setup.py from distutils.core import setup setup( name=" ...
- Jenkins教程(八)实现 GitLab 触发 Jenkins 自动按模块发布前端
楔子 上篇文章解决了提交/合并请求自动触发的需求,但所有前端模块都在同一个代码仓库里,如何获取变更文件路径确定要发布哪个模块呢?本文将带你解决这个问题. 思路 分别解决 3 个问题: 获取变更的文件列 ...
- Pexpect模块的安装
Pexpect模块的安装 下载地址:https://pypi.python.org/pypi/pexpect/ 解压后在目录下运行:python ./setup.py install (必须是root ...
- Python Beautiful Soup模块的安装
以安装Beautifulsoup4为例: 1.到网站上下载:http://www.crummy.com/software/BeautifulSoup/bs4/download/ 2.解压文件到C:\P ...
随机推荐
- OC NSMutableArray
#import <Foundation/Foundation.h> #import "Student.h" void arrayCreate() { NSMutable ...
- OC 指向指针的指针
#import <Foundation/Foundation.h> void changeC(char *d) { *d = ; } void changeStr(NSString **s ...
- 魅族首页导航效果(不兼容IE)
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- hdu-4135 Co-prime---容斥定理经典&&求1-m中与n互质的数目
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4135 题目大意: 求区间[a, b]中与N互质的数目. 解题思路: 首先对n求出所有素因子. 对于区 ...
- 第八章.Spring MVC
基于MyEclipse开发 工程结构: 所使用到的jar: 代码: FruitControllerTest.java public class FruitControllerTest implemen ...
- 关于JWT.NET
1.JWT的概念: JWT全称是Json Web Token,是一种用于双方之间传递安全信息的简洁的.URL安全的表述性声明规范.JWT作为一个开放的标准( RFC 7519 ),定义了一种简洁的,自 ...
- javaWeb中怎么获取提交表单里面的值
在javaWeb中如何获得html文件中的表单里面的值? <!DOCTYPE html> <html> <head> <meta charset=" ...
- tomcat启动startup.bat一闪而过【亲测有效】
遇到很多次运行startup.bat后,一个窗口一闪而过的问题,但是从来没去纠正怎样修改配置才是正确的,现在从网上查阅的资料整理如下:tomcat在启动时,会读取环境变量的信息,需要一个CATALIN ...
- mysql学习记录,CASE WHEN THEN ELSE END用法
记mysql,case when then else end用法 用法1:搜索函数 SELECT r.order_no, r.golds, r.pay_tool, , ) ) END AS price ...
- [异常笔记] zookeeper集群启动异常: Cannot open channel to 2 at election address ……
- ::, [myid:] - WARN [WorkerSender[myid=]:QuorumCnxManager@] - Cannot open channel to at election ad ...