python 安装、软件包与项目管理
问题:有些使用体验太过复杂——对,说的就是为专业级Python项目设置工作区、目录结构与基本架构;管理与项目相关的环境、软件包及依赖项;以可重复方式重新分配项目来源;并一次又一次不断进行这个过程。
Rust与Go这两种语言,在初始设计阶段就强调提供一种单一且规范的项目设置方式,并允许开发者在整个生命周期之内对其进行轻松管理。Rust与Go开发人员虽然因此牺牲掉了一定程度的灵活性,但却换来了良好的一致性、可预测性以及可管理性。
Python提供的安装、软件包以及项目管理工具与方法,随着时间推移而不断积压,并成为30年发展周期中的一笔重大负担。其中有用于软件包管理的pip、用于创建虚拟环境的venv/virtualenv、用于元管理的virtualenvwrapper与Pipenv、用于生成项目依赖性的pip-tools、以及用于创建Python代码发行版的distutils与setuptools等。此外,还有负责定义项目其它部分的setup.py、requirements.txt、setup.cfg、MANIFEST.in以及Pipfile等等。
解决方案:同样的,我们需要取代这如同一团乱麻的工具与流程大杂烩,由Python核心开发团队拿出一套规范性的解决方案,同时确保其能够优雅地迁移一切利用现有方法开发出的项目。当然,这是个很难解决的挑战,但随着Python语言变得越来越重要,我们必须努力让它成为一款易于上手、维护简单、一致性强且友好舒适的编程工具。
目前这方面工作已经有所进展。根据PEP518提案,Python的build依赖项被合并为pyproject.toml文件格式。而像poetry这样的第三方工具虽然只能打包现有工具,但已经体现出一体化管理产品的样貌。随着时间的推移,其中一种解决方案也许会脱颖而出、受到整个社区的关注,并成为客观层面甚至是范式性的处理标准。
以上内容为大家介绍了python安装、软件包与项目管理,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。http://www.mobiletrain.org/
相关推荐HOT
更多>>python正则表达式中的零宽断言
python正则表达式中的零宽断言1、概念有些元字符不匹配任何字符,只是简单的表示成功或失败,所以这些字符也叫零宽断言。2、符号举例(1)|或操作...详情>>
2023-11-14 11:35:03python方法的绑定和未绑定
python方法的绑定和未绑定1、说明未绑定对象的方法:无self参数的方法,通过定义类调用函数,返回未绑定self的方法。绑定对象的方法:带self参...详情>>
2023-11-14 09:53:02python海象运算符的使用
python海象运算符的使用1、在判断条件下允许操作。在一定程度上简化了代码,但降低了可读性。i=len((l:=[1,2,3]))#先对l进行赋值,在对i赋值whi...详情>>
2023-11-14 02:38:21pythonelif语句报错是什么原因
python的else和elif语句也可以叫做子句,因为它们不能独立使用,两者都是出现在if、for、while语句内部的。else子句可以增加一种选择;而elif子...详情>>
2023-11-13 21:46:35