V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
wudiiiii
V2EX  ›  Python

Python 依赖管理:如何避免忘记 pip freeze?

  •  
  •   wudiiiii · 2023-08-27 15:58:32 +08:00 · 2170 次点击
    这是一个创建于 488 天前的主题,其中的信息可能已经有所发展或是发生改变。

    嘿大家好,我是个 Python 新手,也搞过一点前端。在前端,我用 npm 装包,它会自动更新 package.json ,非常方便。

    但在 Python 里,我用 venv 和 pip ,每次提交代码之前都得手动运行 pip freeze 。这步我经常给忘了,感觉我这个流程可能有问题。

    你们是怎么管理依赖的?有没有什么办法能自动更新依赖列表,像 npm 那样?期待听到大家的建议和经验。

    11 条回复    2023-09-12 11:04:30 +08:00
    paopjian
        1
    paopjian  
       2023-08-27 15:59:19 +08:00
    啊?
    luemail2023
        2
    luemail2023  
       2023-08-27 16:00:14 +08:00   ❤️ 1
    pipenv
    wudiiiii
        3
    wudiiiii  
    OP
       2023-08-27 16:07:31 +08:00
    @luemail2023 谢谢您的回答,在搜索过程中我还发现了相似的工具 ( poetry 、pdm ) 可以用来管理依赖,虽然我有选择困难症,但作为前端,我已经习惯了😀。
    14
        4
    14  
       2023-08-27 16:56:09 +08:00   ❤️ 1
    我是用 pyenv + poetry 管理 Python 版本和依赖版本
    ETiV
        5
    ETiV  
       2023-08-27 17:19:47 +08:00 via iPhone   ❤️ 2
    > 每次提交代码之前都得手动运行 pip freeze

    了解一下 git hooks ,pre-commit 适合你这情况
    sniperhgy
        6
    sniperhgy  
       2023-08-27 17:50:57 +08:00
    个人比较喜欢用 conda 来管理环境,大家统一版本,甚至可以不用安装直接 copy 包过去。
    baobao1270
        7
    baobao1270  
       2023-08-27 18:03:28 +08:00
    我用 Pycharm ,如果有 venv 里已经有但是未添加到 requirements.txt 的依赖,IDE 会报 warning
    当然最好的方法还是用包管理器
    hutoer
        8
    hutoer  
       2023-08-27 19:04:02 +08:00
    试试 poetry
    dayeye2006199
        9
    dayeye2006199  
       2023-08-28 13:23:42 +08:00
    poetry 可解。
    python 的包管理确实挺生草的
    iorilu
        10
    iorilu  
       2023-08-31 11:33:02 +08:00
    用 miniconda 就行了

    开发环境导出一个 yml

    生产环境重建下环境就行

    https://www.thoughtvector.io/blog/deployment-with-anaconda/
    dif
        11
    dif  
       2023-09-12 11:04:30 +08:00
    pycharm 会提示的吧,我之前安装了高版本的 numpy ,但 requirements.txt 中的还是是低版本,一直提示我要安装 numpy 低版本。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2713 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 12:41 · PVG 20:41 · LAX 04:41 · JFK 07:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.