一、准备发布

1.为模块文件创建一个文件夹,并将模块文件复制到这个文件中(一般,文件夹的名字和模块的名字一样)

2.在文件夹中创建一个名为『setup.py』的文件,内容如下:

#encoding:utf-8
#发布文件 #从Python发布工具导入"setup"函数
from distutils.core import setup setup(
name='ljq_helloWorld',
version='1.0.0', author='keenleung',
author_email='lsjljq@163.com',
url='http://www.keenleung.com', description='这是我的第一个发布安装文件'
)

二、构建发布

1.构建一个发布文件

通过终端,cd到模块文件夹,键入命令:

python setup.py sdist

2.将发布安装到你的Python本地副本中

仍在终端操作,键入命令:

sudo python setup.py install

三、发布预览

成功将模块转换为一个发布,并安装到Python本地副本上后,会有几个新的文件或文件夹出现:

1.MANIFEST

包含发布中的文件列表

2.build -> lib -> helloWorld.py

这是新增的文件夹,代码在helloWorld.py中

3.dist -> helloWorld-1.0.0.tar.gz

helloWorld-1.0.0.tar.gz是发布包

4.helloWorld.pyc

是『编译』版本的代码

四、导入模块并使用

使用import + 模块名(不需要.py)即可

注意:调用模块中的方法,必须指出命名空间,比如:

import ljq_helloWorld

items = [1,2,3,4,5,6,7,8]

#ljq_helloWorld.print_list(items)

五、上传到PyPI

1.注册PyPI网站

http://pypi.python.org

2.向PyPI上传代码

1)使用终端,cd到模块文件夹,并敲入命令:

python setup.py register

会提醒你选择哪一种方式,选择『use your existing login』即可

然后输入你的PyPI帐号的用户名和密码

正确后,会再次提醒你是否保存登录,选择『y』即可,以备日后使用

2)接着是上传代码,需要使用命令:

python setup.py sdist upload

Finished!!!!

python: 模块发布的更多相关文章

  1. Python模块发布

    项目根目录添加setup.py模块: from distutils.core import setup setup( name="模块名字", version="1.0. ...

  2. python 模块发布及使用

    将模块(此处名为nester)写好后,与setup.py放入同一个文件夹中: //setup.py from distutils.core import setup setup( name=" ...

  3. 打包发布Python模块或程序,安装包

    Python模块.扩展和应用程序可以按以下几种形式进行打包和发布: python setup.py获取帮助的方式 python setup.py --help python setup.py --he ...

  4. Python深入:Distutils发布Python模块--转载

    https://blog.csdn.net/gqtcgq/article/details/49255995 Distutils可以用来在Python环境中构建和安装额外的模块.新的模块可以是纯Pyth ...

  5. python模块之导入包及模块发布

    1.导入包(不常用的方法) 在使用python的包时,有时候想直接导入包名,然后通过包名来调用模块,例如: temp为我们创建的一个包,如果我们想通过下面的方式进行导入模块中的方法,将会出错 impo ...

  6. Python深入:Distutils发布Python模块

    Distutils可以用来在Python环境中构建和安装额外的模块.新的模块可以是纯Python的,也可以是用C/C++写的扩展模块,或者可以是Python包,包中包含了由C和Python编写的模块. ...

  7. Python模块常用的几种安装方式

    Python模块安装方法 一.方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib 二.方法2: 多文件模块,带setup.py 下载模块包,进行解压,进入模块文件夹,执行:pytho ...

  8. Python模块学习

    6. Modules If you quit from the Python interpreter and enter it again, the definitions you have made ...

  9. python模块介绍- binascii 二进制和ASCII转换

    python模块介绍-binascii二进制和ASCII转换 目录 项目简介 简介: Uu编码 Binhex编码 Base64编码 QP码 CRC校验和 二进制转换 其他实例 项目简介 Python中 ...

随机推荐

  1. 奥迪--S5

    --型号:S5 --生产:奥迪进口 --价格:60-80W --发动机:3T 333马力 V6,机械增压 --变速箱:7档双离合 --气缸排列:V --总部:德国,英戈尔施塔特 --类型:中型车 -- ...

  2. PHP unset 后恢复数组索引

    unset($arr[3]); $arr = array_values($arr); array_values() 函数返回一个包含给定数组中所有键值的数组,但不保留键名,被返回的数组将使用数值键,从 ...

  3. ios计算内容的高度 (含7.0前及以后的版本的用法)

    + (CGFloat)heightForContent:(MyMsgTextModel *)content withWidth:(CGFloat)width { CGSize contentSize; ...

  4. Construct Binary Tree from Inorder and Postorder Traversal || LeetCode

    /** * Definition for a binary tree node. * struct TreeNode { * int val; * struct TreeNode *left; * s ...

  5. 浏览器同步测试神器 — BrowserSync

    Browsersync 能让浏览器实时.快速响应文件更改(html.js.css.sass.less等)并自动刷新页面.更重要的是 Browsersync可以同时在PC.平板.手机等设备下进项调试,当 ...

  6. SQLSERVER20008 完整备份和差异备份

    --差异备份 DIFFERENTIAL ) ),)+'.bak' BACKUP DATABASE [testbackup] TO DISK=@name WITH DIFFERENTIAL, NOFOR ...

  7. Lua JSONRPC学习笔记

    JSON RPC JSON RPC 为利用json数据格式来执行远程调用方式, 作用同xmlrpc,不过与xmlrpc相比, jsonrpc更加轻量,json更加节省数据量,更加可读性高. 官网网站: ...

  8. 20145320 《Java程序设计》第6周学习总结

    20145320 <Java程序设计>第6周学习总结 教材学习内容总结 第十章 输入/输出 流(Stream)是对「输入输出」的抽象,注意「输入输出」是相对程序而言的 10.1 Input ...

  9. 记录重置css样式

    ;} ol,ul{;;} table {; } caption, th, td { font-weight: normal; text-align: left; } a img, iframe { b ...

  10. windows系统调用 互斥体mutex

    #include "iostream" #include "windows.h" using namespace std; class CCountUpDown ...