原文链接: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. kubernetes/k8s CRI分析-kubelet创建pod分析

    先来简单回顾上一篇博客<kubernetes/k8s CRI 分析-容器运行时接口分析>的内容. 上篇博文先对 CRI 做了介绍,然后对 kubelet CRI 相关源码包括 kubele ...

  2. 在Linearlayout中新增ScrollView支持滚动

    https://blog.csdn.net/wenzhi20102321/article/details/53491176 1.一般只需要在布局中加个ScrollView即可 2.如果布局中包含lis ...

  3. Linux服务器下JVM堆栈信息dump及问题排查

    #dump 方法栈信息 jstack $pid > /home/$pid/jstack.txt #dump jvm内存使用情况 jmap -heap $pid > /home/$pid/j ...

  4. JVM-初见

    目录 JVM的体系结构 类加载器 双亲委派机制 Native PC程序计数器 方法区(Method Area) 栈 堆 调优工具 常见JVM调优参数 常见垃圾回收算法 引用计数算法 复制算法 标记-清 ...

  5. miniFTP项目集合

    项目简介 在Linux环境下用C语言开发的Vsftpd的简化版本,拥有部分Vsftpd功能和相同的FTP协议,系统的主要架构采用多进程模型,每当有一个新的客户连接到达,主进程就会派生出一个ftp服务进 ...

  6. noip35

    T1 考场乱搞出锅了... 正解: 把原序列按k往左和往右看成两个序列,求个前缀和,找下一个更新的位置,直接暴跳. Code #include<cstdio> #include<cs ...

  7. noip8

    T1 星际旅行 考试时觉得是道数学题,但没想到忘了欧拉路. 首先将每条边都拆成两条边,那么题目就变成了任意删掉两条边,使得新的图中存在欧拉路.设 \(sum\) 表示自环的数量, \(du_{i}\) ...

  8. vim宏录制

    宏录制 当你要重复某一个操作时,录制的宏可以很快地帮你完成任务. 准备文本 <!DOCTYPE html> <html lang="en"> <hea ...

  9. TypeScript 入门指南 【大白话】

    前言 聊聊为何要学习TypeScript? 从开发角度来讲, TypeScript 作为强类型语言,对属性有类型约束.在日常开发中少了减少了不必要的因参数类型造成的BUG,当你在使用同事封装好的函数时 ...

  10. springCloud-Hystrix服务监控Dashboard

    1.Hystrix服务监控Dashboard 介绍 Hystrix服务监控Dashboard仪表盘 在实际生产中,成千上万的服务,我们怎么知道提供服务的高可用情况,即服务的成功失败超时等相关情况; H ...