关于 Python 的一些疑问

2023-10-18 10:40:19 +08:00
 entimm

python 项目的 python 版本问题

我看到大多数的 python 项目都没有说明项目需要运行在什么版本的 python 环境,所以导致在尝试运行的时候也经常报错,不过我也看到有些项目是在有一个 runtime.txt 的文件来写明 python 版本 python 的不同版本之间不太兼容,没有统一的方式标明项目所需的 python 版本,那么我怎么知道该创建什么版本的虚拟环境呢

python 项目的依赖管理问题

python 项目当前好像并没有 php 的 composer 、js 的 npm 这样的包管理工具,我看到很多 github 的 python 项目都是用 requirements.txt 来管理 python 的依赖,不过还是有相当多的项目根本就没有 requirements.txt ,,所以很多 python 项目在 clone 下来尝试运行的时候,经常就是报找不到包,然后我只能遇到一个相关报错就安装一个

以上两个问题让我非常困惑,麻烦懂的大佬帮忙解解惑

1550 次点击
所在节点    Python
10 条回复
TArysiyehua
2023-10-18 10:44:07 +08:00
以前野蛮生长,现在一般都要求要 requirements.txt
TArysiyehua
2023-10-18 10:47:31 +08:00
有 pyproject.toml 或者 runtime.txt 来定义 python 版本
Hstar
2023-10-18 10:51:40 +08:00
你找的都是什么 python 项目啊,已经很少有这样不友好的开源库了。
要么是在文档里指定 python > 3.7 或者 python <= 3.7 ,要么就是语法简单,完全兼容 python3 。
requirements.txt 是比较老的依赖管理途径了,不支持指定 python 版本,但比较新的 pipenv 或者 poetry 都可以啦。
thinkershare
2023-10-18 10:51:45 +08:00
没有办法知道,python 的依赖管理就是一坨狗屎。
lplk
2023-10-18 11:27:17 +08:00
我毕业以来项目都会写 dockerfile ,编译好一般直接能跑,通过 dockerfile 就可以看到依赖的环境了。
tomtao00001
2023-10-18 11:27:24 +08:00
pyenv 管理 python version,
tomtao00001
2023-10-18 11:27:57 +08:00
@tomtao00001 #5 pdm 管理项目依赖
makerbi
2023-10-18 12:20:40 +08:00
我现在新项目都在用 PDM 管理了,开发测试生产都没啥问题
julyclyde
2023-10-18 12:29:19 +08:00
持续维护的软件应该会逐渐跟随 python 的主要版本
并在自己的安装包里写明兼容的版本范围

至于缺乏维护的……建议别沾他们
cmdOptionKana
2023-10-18 12:31:16 +08:00
> 大多数的 python 项目都没有说明项目需要运行在什么版本的 python 环境

这个前提就错了,后面的就没必要讨论了。

因为大多数 python 项目都会明确版本,自然没啥大问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/983026

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX