pypi中只有linux版本,python使用setuptools打包并上传到PyPi版本库中

我博客的地址: http://www.reyoung.me http://www.thisisreyoung.com

最近在写python的一个幻灯生成器。看到很多python的库都以setup.py和easy_install安装,便打算尝试一下。一试之下发现极端简单。所以做一些笔记。

参考的文章有:

准备工作

万事开头难,要想你的python代码可以使用easy_install和setup.py,那么必须做好以下准备:

安装python的setuptools包

你的代码必须是在package里。也就是你的代码不能出现在根目录,应该在一个目录下,且有init.py。

书写你的setup.py脚本

本着记录我的想法的目的,我就不从Hello world开始了。我就直接将SlideGen这个库的setup.py放出来。根据每行说明一下,大家应该就懂了。

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

setup(

name='SlideGen',

version='0.0.0.1 pre',

packages=['slidegen'],

author='reyoung',

author_email='reyoung@126.com',

license='LGPL',

install_requires=["PyYAML>=3.10","Markdown>=2.1.1","tornado>=2.2"],

description="A HTML5 Slide Generator in python",

entry_points ={

'console_scripts':[

'SlideGen=slidegen.SlideGen:Main'

]

},

keywords ='html5 slide generator',

url='https://github.com/reyoung/SlideGen'

)

这个代码需要在根目录中写一个叫做setup.py文件,在setup.py中包括上述代码。 在其中,必须包含一个叫做setup的函数,在这个函数中,可以对代码包的参数进行设置。一些参数的简单介绍如下:

packages:你的代码库包括的package。这个packages可以是多个,也可以通过find_packages自动去做,不过手动也是不错的。

install_requires:就是你的代码库需求的第三方库。如果你不记得你的代码中使用的第三方库有什么,可以使用yolk显示所有在setuptools下管理的第三方库 安装yolk可以使用easy_install yolk 查询使用easy_install管理的软件包使用命令yolk -l

entry_points是自动生成的可执行程序,他会生成到Python*/Scripts/这个目录中。其中:

console_scripts是生成命令行程序

gui_scripts是生成图形界面程序

等于右边的格式如下:"[可执行程序名]=引入的包名.子包名.模块名:入口函数"

使用setup.py

安装

在写好setup.py后,安装变得异常简单。直接使用命令python setup.py install即可以完成安装。

调试/卸载

我并没有找到使用python脚本卸载的方法,但是可以使用python setup.py install --record install.txt将所有安装的文件列在install.txt中。我们可以使用rm来删除这些文件,达到卸载的目的。

上传到PyPi的版本库

上传pypi后,其他人就可以使用easy_install XXX来安装了。

上传也非常简单,只需要一条命令。

setup.py register sdist bdist_egg upload

而使用这条命令的结果,就会将你的代码传到pypi上,需要注意的是:

如果你没注册pypi帐号,在命令行中他会提示你注册pypi帐号,跟着步骤来就好了。但是需要注意验证电子邮箱。

之后,如果你选择记住密码,他会在你的%HOME%\.pypirc中存储你的密码(linux下是~/.pypirc),需要注意的是,他存储密码的格式不正确,需要手工的添加[server-login]这一段,格式如下

...

[server-login]

username: XXXXXX

password: XXXXXX(明文)

这样你就可以将python的代码上传到pypi版本库中了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值