上传自己的Python代码到PyPI
一、需要准备的事情
1、当然是自己的Python代码包了;
2、注册PyPI的一个账号。
二、详细介绍
1、代码包的结构:
application \application
__init__.py
myapplication.py
......
\docs
README.txt
setup.py
2、说明
setup.py是不可缺少的,定义了代码包的详细信息,我们也是通过该模块进行打包,上传等操作。
docs是项目文档,可以通过sphinx生成。可在setup模块中通过参数实现,long_description=__doc__,详见下面代码。
README.txt是对整个代码包的描述。
application是本项目的代码包,代码包嘛,必须要有__init__.py文件。
3、setup.py编写
try:
from setuptools import setup
except ImportError:
from distutils.core import setup
"""
这里这么写的目的是防止setup导入出错,安装出现异常。但一般不会出错
""" setup(
name='haibo',
version='0.1.2',#该信息是必不可少的
author='haibo',
author_email='hbnnlong@163.com',
description='haibo universal function',
license='MIT',
packages=['haibo',],#需要安装的代码包,也可以用find_packages函数
install_requires=['mako>=1.0.3',
],#一些第三方账号,需要在这里申明。
classifiers = [
'License :: OSI Approved :: MIT License',
'Programming Language :: Python',
'Intended Audience :: Developers',
'Operating System :: OS Independent',
],#这也需要遵循标准格式
keywords='haibo function',
url='hbnnlove.sinaapp.com',
zip_safe=True,#设为True,以zip的方式进行传输
include_package_data=True,#字面意思就可理解
platforms='any'
)
..............
4、代码编写完后的工作:
1)用Python setup.py check检查一下。如果出现running check则表示正常;
2)敲Python setup.py sdist(保证用pip安装);
pyhton setup.pybdist_egg(保证easy_install安装)
3)执行python setup.py register sdist bdist_egg upload进行上传。
在该步骤中需要输入你在PyPI的用户名和密码。
参考文献:
http://liluo.org/blog/2012/08/how-to-create-python-egg/
http://docs.python.org/2/distutils/index.html
上传自己的Python代码到PyPI的更多相关文章
- 使用 twine 上传自己的 python 包到 pypi
打包检查 python setup.py check 打包 python3 setup.py sdist build 上传 twine upload dist/* twine 安装: pip inst ...
- 【Python实战02】共享Python代码到PyPI社区
之前学习了Python的列表,以及编写了一个函数来进行列表的输出,这次我们就继续来学习如何把我们已经编写好的代码共享到PyPI社区,这里以上篇文章中编写的print_lol函数为例. 函数转换为模块 ...
- 上传python代码到pypi
上传python代码到pypi 去pypi官网注册账号 在项目中添加setup.py # coding = utf-8 from setuptools import setup, find_packa ...
- 上传本地代码及更新代码到GitHub教程
上传本地代码及更新代码到GitHub教程 上传本地代码 第一步:去github上创建自己的Repository,创建页面如下图所示: 红框为新建的仓库的https地址 第二步: echo " ...
- 【学习总结】【Java】Git学习-上传本地已有代码到GitHub
< Git学成归来后的第一次实战 > 上传本地已有代码到GitHub 以之前学了一小半的Java基础教程代码为例 <深坑预警:在GitHub新建仓库那一步,不要勾选readme,不然 ...
- C# FTP上传文件至服务器代码
C# FTP上传文件至服务器代码 /// <summary> /// 上传文件 /// </summary> /// <param name="fileinfo ...
- 2018年7月份,python上传自己的包库到pypi官网的方法
最近pypi官网进行了更新,老的上传网址作废了.记录下上传到pypi的方法 0.去pypi官网注册账号,没账号是不可能上传的,想想也是那不乱套了吗,注册后会收到一个邮件需要点击然后重新登录 1.目录就 ...
- python 全栈开发,Day86(上传文件,上传头像,CBV,python读写Excel,虚拟环境virtualenv)
一.上传文件 上传一个图片 使用input type="file",来上传一个文件.注意:form表单必须添加属性enctype="multipart/form-data ...
- 优酷上传SDK解析(Python)
1.优酷上传 1)调用优酷的sdk完成优酷视频的上传首先需要将实例化YoukuUpload类实例化,传入的参数为(client_id,access_token,文件地址) 实例化时执行__init__ ...
随机推荐
- 腾讯云>>云通信>>TLS后台API在mac上JAVA DEMO搭建
1.相关文档地址 2.相关demo代码 代码部分作了修改,使用了commons-io中的IOUtils.toString简化了io操作 public class Demo { public stati ...
- JVM 新生代老年代
1.为什么会有年轻代 我们先来屡屡,为什么需要把堆分代?不分代不能完成他所做的事情么?其实不分代完全可以,分代的唯一理由就是优化GC性能.你先想想,如果没有分代,那我们所有的对象都在一块,GC的时候我 ...
- Rdlc报表 数据汇总分组展示
1.从工具箱拉出表或者矩阵(本次使用的是矩阵) 2.选择需要的数据集,没有就新建一个数据集,名称自己起好,下面有用到 3.将行组和行列显示出来(右击报表--试图=>) 4.双击行组下的RowGr ...
- MyBatis 简介
MyBatis的前身叫iBatis,本是apache的一个开源项目, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis ...
- iOS - CoreData 数据库存储
1.CoreData 数据库 CoreData 是 iOS SDK 里的一个很强大的框架,允许程序员以面向对象的方式储存和管理数据.使用 CoreData 框架,程序员可以很轻松有效地通过面向对象的接 ...
- Lambda表达式遍历集合
1.Collection Java 8 为Iterable接口新增了一个forEach(Consumer action)默认方法,该方法所需参数的类型是一个函数式接口,而Iterable接口是Coll ...
- iOS 工程功能实现之好用的第三方
1.http://www.cocoachina.com/ios/20140224/7868.html (一个天气App案例) LBBlurredImage是一个继承自UIImageView,轻而易举 ...
- 浅谈C#Socket
好不容易把socket通信搞懂一点,比较喜欢做笔记,嘿嘿~ 希望共同学习,共同进步! socket通信是C#中非常基础的一个知识点,我这里用到的是基于Tcp协议的socket通信.Tcp会有三次握手连 ...
- mysql delete 使用别名 语法
今天删除数据,写了这么条sql语句, DELETE from sys_menus s WHERE s.MENU_ID in (86,87,88); 结果报错.. [Err] 1064 - You ...
- 空格用法
记录一下,空格的转义字符分为如下几种:平时一般用的是 1. &160#;不断行的空白(1个字符宽度)2. &8194#;半个空白(1个字符宽度)3. &8195#;一个空 ...