发布你的Python模块详解

作者:huilan_same 时间:2021-06-10 02:03:53 

我们在学习Python的时候,除了用pip安装一些模块之外,有时候会从网站下载安装包下来安装,我也想要把我自己编写的模块做成这样的安装包,该怎么办,如何发布呢?

大概需要以下四个步骤:

1.首先为模块创建一个文件夹。

举个简单的栗子,你写了一个add.py模块文件,里面有个add方法实现加法。这第一步就需要你创建一个文件夹。并把add.py复制到这个文件夹里,为简单起见,我们把文件夹就命名为add

add
|__add.py

2.然后在新文件夹中创建一个名为“setup.py”的文件。

编辑这个文件,增加下面的代码。这个文件包含有关发布的元数据,如下面的示例,具体的元数据可以与示例中不同:


from distutils.core import setup

setup(
   name    = 'add',
   version   = '1.0.0',
   py_modules = ['add'],
   author   = 'huilan',
   author_email= 'womende218@126.com',
   url     = 'http://www.lalalala.com',
   descriptioin= 'add two numbers',
 )

3.构建一个发布文件。

现在我们有了一个文件夹,其中包含两个文件:模块代码放在add.py中,有关的元数据放在setup.py中。接下来我们就利用Python自带的发布工具制作发布文件。
在add文件夹中打开一个终端,或者cmd命令行cd到add文件夹中,执行以下命令:

python3 setup.py sdist

4.将发布模块安装到你本地Python中。

仍然在刚刚打开的终端中,输入以下命令:

sudo python3 setup.py install

看屏幕上出现了发布信息,确认安装成功,发布即准备好。

最终我们得到的文件夹结构如下:

add
   |__ MANIFEST
   |__ build
   |         |__ lib
   |                |__ add.py
   |__ dist
   |        |__ add-1.0.0.tar.gz
   |__ add.py
   |__ add.pyc
   |__ setup.py

其中:

- MANIFEST这个文件包含发布中的文件列表
- build\lib\add.py与根目录下的add.py都是代码文件
- dist\add-1.0.0.tar.gz是发布包
- add.pyc是编译版本代码
- setup.py存放元数据

标签:Python,模块,发布
0
投稿

猜你喜欢

  • MySQL查询冗余索引和未使用过的索引操作

    2024-01-22 22:04:23
  • JavaScript加密解密终级指南

    2008-01-03 12:25:00
  • 使用MySQL的geometry类型处理经纬度距离问题的方法

    2024-01-21 15:44:06
  • vue项目input标签checkbox,change和click绑定事件的区别说明

    2024-05-21 10:29:27
  • SqlServer服务中利用触发器对指定账户进行登录ip限制提升安全性操作

    2024-01-26 12:24:32
  • Python的控制结构之For、While、If循环问题

    2023-09-16 21:42:45
  • Python使用Matplotlib绘制甘特图的实践

    2021-04-06 03:16:56
  • Python使用pptx实现复制页面到其他PPT中

    2021-07-13 01:28:16
  • 如何通过python实现人脸识别验证

    2021-10-30 18:52:56
  • Python利用Redis计算经纬度距离案例

    2021-03-05 04:51:35
  • 基于Tensorflow高阶读写教程

    2022-10-05 02:37:27
  • 在IE浏览器下面指定表单编码方式

    2009-10-02 16:47:00
  • python接口自动化如何封装获取常量的类

    2023-04-17 07:44:22
  • 通过vue提供的keep-alive减少对服务器的请求次数

    2024-05-28 16:10:40
  • javascript适合移动端的日期时间拾取器

    2023-07-02 05:25:48
  • MYSQL日志的正确删除方法详解

    2024-01-22 13:18:02
  • 怎样设置密码保护问题

    2009-02-16 13:12:00
  • 基于python3抓取pinpoint应用信息入库

    2021-08-05 12:21:02
  • MySQL分区之指定各分区路径详解

    2024-01-15 00:48:00
  • python GUI库图形界面开发之PyQt5布局控件QHBoxLayout详细使用方法与实例

    2021-05-05 15:44:10
  • asp之家 网络编程 m.aspxhome.com