原文鏈接 http://tommao.me/post/publish-python-package
簡史
disutils從1998年便已經(jīng)是python標(biāo)準(zhǔn)庫的一部分瓦盛。它最早由Greg Ward開發(fā)遣铝。
在2000年開發(fā)停止,從那以后治唤,一些開發(fā)人員開始在其基礎(chǔ)上繼續(xù)開發(fā)他們自己的工具。其中
最成功的繼任者便是打包庫setuptools
使用setuptools打包python庫
setup.py
代碼示例
# -*- coding: utf-8 -*-
from setuptools import setup, find_packages
setup(,
name='yourapp',
version='0.1',
description='description.',
author='author',
author_email='author@gmail.com',
install_requires=[],
packages=find_packages(),
include_package_data=True,
zip_safe=False,
url='https://github.com/author/yourapp',
keywords='keyword!'
)
發(fā)布你的項(xiàng)目
- 先到pypi上注冊(cè)賬號(hào)如果你還沒注冊(cè)的話糙申。
- 打開你的
~/.pypirc
文件
[disutils]
index-servers = pypi
[pypi]
username = <your usernmae>
password = <your password>
python setup.py register
python setup.py sdist upload
文件結(jié)構(gòu)可以參考我的一個(gè)項(xiàng)目
https://github.com/istommao/pyvalidators
測(cè)試
一個(gè)好的python庫少不了測(cè)試
關(guān)于測(cè)試也有一些選擇宾添,比如nose,pytest或者是自帶的unittesst柜裸。
這個(gè)庫我選擇的是pytest
看著綠色的通過碼得飛起缕陕。
測(cè)試的好處就是當(dāng)你要調(diào)整代碼時(shí)可以幫你檢查到可能出現(xiàn)的錯(cuò)誤,提高代碼質(zhì)量疙挺。
參考書籍 《Python高手之路》