原文链接:https://blog.csdn.net/Liangjun_Feng/article/details/80037315

一、注册pypi账号

网址:https://pypi.org/ 直接注册就好

二、编写自己的python项目

这是一个名为SICA的文件夹,sica.py和ssica.py是这个项目的主要代码,init文件是必须的,这是一个package的象征,可以什么都不写,但必须有。

三、建立一个setup.py文件

这个文件是用来打包的,内容上是这样

#!/usr/bin/env python
#-*- coding:utf-8 -*- #############################################
# File Name: setup.py
# Author: LiangjunFeng
# Mail: zhumavip@163.com
# Created Time: 2018-4-16 19:17:34
############################################# from setuptools import setup, find_packages #这个包没有的可以pip一下 setup(
name = "SICA", #这里是pip项目发布的名称
version = "2.1.4", #版本号,数值大的会优先被pip
keywords = ("pip", "SICA","featureextraction"),
description = "An feature extraction algorithm",
long_description = "An feature extraction algorithm, improve the FastICA",
license = "MIT Licence", url = "https://github.com/LiangjunFeng/SICA", #项目相关文件地址,一般是github
author = "LiangjunFeng",
author_email = "zhumavip@163.com", packages = find_packages(),
include_package_data = True,
platforms = "any",
install_requires = ["numpy"] #这个项目需要的第三方库
)

这个setup.py需要放在和SICA文件夹同一级的目录上,像下面这样

四、本地打包项目文件

在命令行上先 cd 到存放setup.py文件的目录,例如:cd /d D:\Python\codes\01,然后用下面的命令

python setup.py sdist  

这个命令会在当前目录下生成两个文件夹,保存了这个项目相关的所有信息

五、上传项目到pypi服务器

首先在setup.py这一级的目录下建立一个系统文件 .pypirc 内容如下

[distutils]
index-servers = pypi [pypi]
username:你的PyPi用户名
password:你的PyPi密码
~

再转到命令行,pip一个上传工具

pip install twine

在上传就好

twine upload dist/SICA-2.1.4.tar.gz

六、下载上传的库

到第5步所有的工作其实都已经完成了,可以使用下面的命令直接下载到本地

pip install SICA

python打包发布自己的pip项目的更多相关文章

  1. (18)python 打包发布

    1.安装 pyinstaller pip install pyinstaller 2.创建文件 pyinstaller yourprogram.py 试了半天总是报 TypeError: expect ...

  2. python打包成为exe文件

    pyinstaller 库的使用 PyInstaller是一个十分有用的第三方库,它能够在Windows.Linux.Mac OS X 等操作系统下将 Python 源文件打包,通过对源文件打包,Py ...

  3. 使用Advanced Installer 13.1打包发布 Windows Service服务程序

    原文: 使用Advanced Installer 13.1打包发布 Windows Service服务程序 项目中需要用到一个定时推送案件状态的需求,本人小菜一只,在同事建议下要写成一个windows ...

  4. [Python] 项目打包发布

    一.setuptools - 官方文档: Building and Distributing Packages with Setuptools- 中文文档: Python包管理工具setuptools ...

  5. python如何发布自已pip项目

    python如何发布自已pip项目前言因为自已平时会把一个常用到逻辑写成一个工具python脚本,像关于时间字符串处理,像关于路径和文件夹遍历什么的工具.每一次新建一个项目的时候都要把这些工具程序复制 ...

  6. [转]Python依赖打包发布详细

    Python依赖打包发布详细   http://www.cnblogs.com/mywolrd/p/4756005.html 将Python脚本打包成可执行文件   Python是一个脚本语言,被解释 ...

  7. Python学习手册之__main__ 模块,常用第三方模块和打包发布

    在上一篇文章中,我们介绍了 Python 的 元组拆包.三元运算符和对 Python 的 else 语句进行了深入讲解,现在我们介绍 Python 的 __main__ 模块.常用第三方模块和打包发布 ...

  8. 如何打包发布加密的 Python 源代码

    这里介绍一种使用 PyInstaller 和 PyArmor 来发布加密 Python 源代码的方式,能够达到以下目的 把所有 Python 源代码打包成为可执行文件,客户不需要 Python 就可以 ...

  9. Python 打包和发布方法汇总

    以下主要Python打包汇总,作为学习备份: 一.使用python内部基础工具包Distutils打包程序 1. 在打包之前需要做的就是配置好安装脚本,一般为setup.py文件: 示例(setup. ...

随机推荐

  1. 一个故事看懂HTTPS

    我是一个浏览器,每到夜深人静的时候,主人就打开我开始学习. 为了不让别人看到浏览记录,主人选择了"无痕模式". 但网络中总是有很多坏人,他们通过抓包截获我和服务器的通信,主人干了什 ...

  2. MySQL 事务、日志、锁、索引学习总结,

    MySQL架构 MySQL可分为Server和存储引擎两部分,如图1所示. Server层:包括客户端连接器.查询缓存.解析/预处理器.优化器.执行器等,以及MySQL内置函数和所有跨引擎的功能都在这 ...

  3. 面试常见SQL中where和having的区别你确定你知道吗!

    "Where" 是一个约束声明,使用Where来约束来之数据库的数据,Where是在结果返回之前起作用的,且Where中不能使用聚合函数. "Having" 是 ...

  4. Python爬虫学习——1.爬虫入门

    HTTP和HTTPS HTTP协议(HyperText Transfer Protocol,超文本传输协议):是一种发布和接收 HTML页面的方法. HTTPS(Hypertext Transfer ...

  5. FSM自动售货机 verilog 实现及 code 细节讲解

    1.题目: 饮料1.5 元, 可投入硬币1 元 0.5 元,输出饮料 零钱 2. 画出状态机. 3.仿真结果:coin=1 --> 0.5 元 coin=2-->1元 4.关键代码分析: ...

  6. 1009 Product of Polynomials (25分) 晚上脑子就是容易僵住

    #include<iostream> using namespace std; struct { int a; double b; }poly[1001]; double a[2001]; ...

  7. AttributeError: module 'numpy' has no attribute 'num'

    AttributeError: module 'numpy' has no attribute 'num' 写在前面 总的来说,先看看自己用的计算方式是不是写对了先,多个一起使用的话记得都看看 通过想 ...

  8. SpringBoot开发五-社区首页开发

    需求介绍-社区首页 根据之前的学习,我们一般都是先按照DAO->Service->Controller这个顺序去开发 分布实现: 开发社区首页,显示前十个帖子. 开发分页组件,分页显示所有 ...

  9. Echarts 图表位置调整

    Echarts 图表的位置调整 折线图和柱状图,通过grid属性调整. grid:{ show:false, top:'20%', right:'5%', bottom:'10%', left:'10 ...

  10. 【AI】Pytorch_预训练模型

    1. 模型下载 import re import os import glob import torch from torch.hub import download_url_to_file from ...