当前位置: 首页 > news >正文

pyscaffold建立项目管理

pyscaffold

新建一个python项目的管理软件。一个命令就可以putup my_project即可。
PyScaffold helps you to easily setup a new Python project.

安装

三种方法:

pipinstallpyscaffold pipinstallpyscaffold[all]condainstall-c conda-forge pyscaffold

我试过第一种,发现有时候会遇到bug,your setuptools version is too old (<12).
但是pip install -U setuptools无法解决问题。这与pyscaffold的版本有关。为了方便的解决这些。我直接利用了第三种方法。毕竟这地方不是我们的重点。

最后的requirement

annoy1.15.2bert-serving-client1.9.1certifi2019.6.16faiss1.5.3pip19.2.2pyarrow0.14.1PyScaffold3.2.1setuptools41.2.0six1.12.0wheel0.33.4

新建python项目

putup my_project

这时候就有了模板话的python项目,有文档、作者、代码、测试等。
如下:

AUTHORS.rst LICENSE.txt docs setup.cfg src CHANGELOG.rst README.rst requirements.txt setup.py tests

为什么需要模板,是因为简单快捷,而且这些部分一般情况下都需要,是为了更好的把这个项目标准化。

其他操作

python setup.py docs 文档化
python setup.py test (python setup.py test --addopts -h) 测试py.test里的东西
后面pip install -r requirement.txt则会在其他项目安装。

为了简单,只要修改setup.py就可以了

打包

Source Distribution Package(源码打包)

This will create a source “tarball” package.

python setup.py sdist

Binary Distribution Package(二进制打包)

This will create a binary architecture-dependent package.

python setup.py bdist

个人喜好只改setup.py

VERSION="1.0.0"setup(name='xx1',version=VERSION,description='xx2',url="xx3",long_description="test for pyscaffold",author='xx4',author_email='xx5',install_requires=["six","pyscaffold","sphinx","boto3","pandas","modelhub"])

如何发布到仓库repository

twine upload -r pypi-xx dist/your_project-1.0.1.tar.gz

总结

  1. pyscaffold模板化利于管理
  2. python setup.py test/install/sdist/bdist等来对源码测试、安装到本地、打源码包,打发布包
  3. 打包的时候需要meta信息,为了更简单,可以直接在setup.py里的setup里直接写。简单。
  4. 然后发布到远程仓库

参考文献

https://pypi.org/project/PyScaffold/
https://lingxiankong.github.io/2013-12-23-python-setup.html
https://github.com/pyscaffold/pyscaffold/
https://pypi.org/project/twine/

http://www.jsqmd.com/news/1282246/

相关文章:

  • 解决在spring boot打成jar包后读取resource下资源文件抛出 java.io.FileNotFoundException
  • Slim框架和Freeze old model模型学习百科
  • 2026线槽桥架一站式供应:热浸锌线槽/母线槽定制/PVC线槽直销/镀锌线槽现货/不锈钢桥架定制源头厂家 - 栗子测评
  • 2026唐山黄金回收就来丽坤奢品汇18617962974全国连锁专业靠谱 - 丽坤奢品汇
  • ribbon的搭建
  • 从入门到精通:2026年加水印工具选择指南 - 软件工具教程方法
  • 终极指南:如何免费解锁WeMod完整功能,获得专业版体验
  • DamaiHelper:从手动抢票到智能掌控,你的演唱会门票管家
  • 告别Adobe插件安装烦恼:ZXPInstaller三步拖放搞定.zxp文件
  • 【2024数据治理黄金标准】:用AI自动整理数据替代人工核对——某头部银行降本83%的底层逻辑
  • 如何快速实现Windows 11任务栏歌词:Taskbar-Lyrics完整指南
  • python常用模块
  • activiti的25张表的建立
  • AI自动生成对话树、动画状态机与测试用例:游戏程序员必须掌握的3类Prompt工程范式
  • axure原型的使用
  • 2026 年 7 月水凝胶细胞 3D 培养厂家 TOP5 评测 类器官构建与细胞功能研究全维度对比 - 互联网科技品牌测评
  • 2026地坪漆品牌哪家性价比高?权威测评+场景适配攻略+避坑FAQ大全 - 商业大观
  • 2026 年至今,山东值得关注的圆管膜结构车棚源头厂家哪家好,旧小区搭车棚别再用彩钢瓦,这玩意儿用十年都不塌还能省一半钱-飞扬膜结构车棚 - 企业官方推荐【认证】
  • 挑选自己想要的显示器
  • Netty(一)之helloworld
  • dubbo实战01-入门案例
  • 开源模型成本陷阱全曝光,92%团队踩坑的3类隐性开销(CUDA版本兼容性、KV Cache内存泄漏、Tokenizer序列膨胀)
  • 终极鼠标优化方案:让你的普通鼠标在macOS上超越苹果触控板体验
  • 别把Tg等同于耐温上限!采购PCB板材真实作用
  • 版本的比较(java)
  • LeetCode515. 在每个树行中找最大值
  • for in
  • 2026邢台黄金回收就来丽坤奢品汇18617962974全国连锁专业靠谱 - 丽坤奢品汇
  • 羽毛球 AI 方案选型对比:MediaPipe vs YOLOv8-Pose vs OpenPose 在运动分析场景的精度与延迟评估
  • Netty简介及使用