包装常见的python命名空间

栏目: Python · 发布时间: 6年前

内容简介:http://stackoverflow.com/questions/5064951/packaging-common-python-namespaces

我想在未来几天打包和上传一个我已经到PyPI的库,但是我对某个命名空间的方法有点不确定.

我有一些其他不相关的项目,具有类似的方法,并希望给他们所有相同的命名空间.例如:

> Library 1命名空间:abc.seo

> Library 2命名空间:abc.ajax

> Library 3命名空间:abc.ecommerce

>等

问题是我不确定两个单独的包(例如,蛋)是否可能与同一父命名空间共存.这个方法是有问题的,还是有办法呢?最好的方法是什么?

图书馆不应该打包在一起,它们是无关紧要的.我希望在上传之前正确获取它,以避免在进行“官方”发布之后痛苦的命名空间更改.

(NB abc不是真名,我想让我的问题免于广告)

UPDATE

我去了以下,对没有安装 工具 的人来说很好:

try:
    __import__('pkg_resources').declare_namespace(__name__)
except ImportError:
    __path__ = __import__('pkgutil').extend_path(__path__, __name__)

在setup.py中执行以下操作:

setup(
    ...
    namespace_packages = ['rollyourown'],
    ...

在每个项目基础目录中,创建以下结构:

/setup.py
/abc/__init__.py
/abc/seo/

/abc/__init__.py包含:

__import__('pkg_resources').declare_namespace(__name__)

setup.py包含:

setup(...,
    packages: ['abc', 'abc.seo'],
    namespace_packages = ['abc']
    ...
)

参考文献: namespace packages .

http://stackoverflow.com/questions/5064951/packaging-common-python-namespaces


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

蚁群算法及其应用

蚁群算法及其应用

李士勇 / 哈工大出版社 / 2004-9 / 25.00元

蚁群算法是意大利学者Dorigo等人于1991年创立的,是继神经网络、遗传算法、免疫算法之后的又一种新兴的启发式搜索算法。蚂蚁群体是一种社会性昆虫,它们有组织、有分工,还有通讯系统,它们相互协作,能完成从蚁穴到食物源寻找最短路径的复杂任务。模拟蚂蚁群体智能的人工蚁群算法具有分布计算、信息正反馈和启发式搜索的特点,不仅在求解组合优化问题中获得广泛应用,而且也用于连续时间系统的优化。 《蚁群算......一起来看看 《蚁群算法及其应用》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

SHA 加密
SHA 加密

SHA 加密工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具