首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
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
V2EX  ›  Python

你们用什么工具来管理 Python 的库啊?

  •  1
     
  •   css3 · 187 天前 · 5372 次点击
    这是一个创建于 187 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我都是全 pip install xx 下来,发现越装越多,有些装了就用过一次就没用了,怎么样科学管理 python 的库呢
    windows 上用什么管理?
    linux 上用什么管理?
    第 1 条附言  ·  186 天前
    还有就是,自己写的 python,可能引入了一些其他第三方库,写完之后 ,要发给别人用,别人也要屁颠屁颠的 pip install xxx, 这种库的问题,如何解决呢?就是想发脚本过去,对方直接能运行就好了,(把库也一起打包过去??)
    58 回复  |  直到 2019-04-16 01:30:50 +08:00
        1
    youngce   187 天前
    pipenv 了解一下
        2
    Sylv   187 天前 via iPhone
    pipenv 了解一下
        3
    flyingghost   187 天前
    pipenv 了解一下
        4
    kaiueo   187 天前 via iPhone   ♥ 2
    anaconda
        6
    guyujiezi   187 天前
    py3 自带 venv
        7
    bigjack   187 天前
    pipenv
        8
    youngxu   187 天前 via Android   ♥ 1
    conda 了解一下
        9
    luanguang   187 天前
    我系统是 windows
    我用 conda
        10
    XIVN1987   186 天前
    pip
        11
    XIVN1987   186 天前
    pip + virtualenv
        12
    congeec   186 天前
    项目用 poetry

    平时用 pip+conda
        13
    Thresh   186 天前
    conda
        14
    chengxiao   186 天前
    不是每个项目独立一个 virtualenv 么?
        15
    j0hnj   186 天前   ♥ 5
    pyenv + poetry, 推荐 pipenv 的你们真的用得爽吗?
        16
    Cbdy   186 天前 via Android
    Docker
        17
    caqiko   186 天前   ♥ 1
    生成 requirements.txt 文件啊
        18
    jinyu121   186 天前 via iPhone   ♥ 1
    自己是这样的:
    conda base 里面不装包
    创建一个叫 playground 的 env,随便装任何包。
    任何需要对外发(发给别人、发 github 上、发博客)的程序,都单独起一个 env,并写 requirements
    只是临时用一下的程序,在 playground 里面写完即删
        19
    w2cny   186 天前 via Android
    anaconda+1
        20
    workwonder   186 天前 via Android
    pipenv 经过痛苦折磨早已放弃。

    pyenv + pyenv-virtualenv + pip-tools
        21
    secsilm   186 天前 via Android
    Pipenv 用过不成熟,对数据科学不友好,数据科学还是 conda 吧
        22
    hujianxin   186 天前
    poetry,感觉比 pipenv 好用很多
        23
    hujianxin   186 天前
    pipenv 真的有点不太行
        24
    aneureka   186 天前 via Android
    项目用 virtualenv 脚本就直接 pip 了…
        25
    ifane   186 天前
    docker 加一
        26
    cranelee13   186 天前 via iPhone
    vmware
        27
    daolanfler   186 天前
    pyenv + pipenv 加一
        28
    ospider   186 天前
    还在使用 pip,研究过 pipenv,感觉就是垃圾,问题多不说,开发者态度非常傲慢
        29
    ly1836   186 天前
    Anaconda Navigator
        30
    keepeye   186 天前
    pyenv + virtualenv,保证每个项目一个环境互不干扰
        31
    BlBana   186 天前 via Android
    @keepeye 握爪,我也是这么搞得
        32
    flyingghost   186 天前
    @j0hnj 项目依赖比较简单,暂时还没遇到痛点,除了 lock 耗时问题。
    能比较一下 pipenv 和 poetry 吗?
        33
    RAHJK   186 天前 via iPhone
    别的不知道,pipenv 真是 bug 多多,慎用
        34
    lynskylate   186 天前 via Android
    poetry
        35
    whileFalse   186 天前
    本地开发直接 install,持续集成走 docker
        36
    CallMeReznov   186 天前
    LZ 你后来那个肯定是 virtualenv 啦
    或者 windows 用 pyinstall 打包
        37
    2s2k   186 天前
    pyenv virtualenv +1
        38
    kios   186 天前
    conda
        39
    lihongjie0209   186 天前
    python 目前没有看到支持类似 java 中的 fatjar 这种把依赖全部打包的模式, 所以楼主的需求基本无解, 我现在给别人写工具首选会是 java, 一来比较熟悉, 二来依赖管理方便
        40
    scukmh   186 天前
    pyenv + requirements.txt
        41
    iorilu   186 天前   ♥ 1
    pipenv 确实不好用, 凭空找麻烦

    不折腾, 就是 venv+requirements 安装下也就几分钟时间

    如果希望直接用就 docker
        42
    Nick2VIPUser   186 天前
    pycharm+virtualenv 爽
        43
    Nick2VIPUser   186 天前
    pip download -r requirements.txt 了解一下
        44
    yim7   186 天前
    virtualenvwrapper 了解一下,可以方便的管理虚拟环境,自己写脚本也可以的,只是我不会写 shell 脚本的补全……
        45
    IAPYANG   186 天前 via iPhone
    anaconda
        46
    quinoa42   186 天前
    pacman。。不拿 python 写 project
        47
    shuax   186 天前
    requirements.txt
        48
    Fitz   186 天前
    pipenv 的 lock 有时真的很耗时几十分钟我都遇到过
        49
    starsky007   186 天前
    @css3 @lihongjie0209

    将自己写的 Python 包与依赖一起打包的方式

    在代码根目录下:

    1. 首先执行:

    pipreqs --ignore target --force .

    生成 requirements.txt 。

    2. 然后执行:

    pip install -r requirements.txt -t target

    把依赖安装到 target 目录下。

    3. 最后,把源码复制到 target 目录下,删除一些不必要的文件,就可以打包了。

    我在使用无服务器云函数时,就是这么干的,确定可行。只是需要分步操作,没有找到现成的工具可以像 Maven 那样打包,自己也懒得写。

    参考:

    [Python 中的 AWS Lambda 部署程序包 \- AWS Lambda]( https://docs.aws.amazon.com/zh_cn/lambda/latest/dg/lambda-python-how-to-create-deployment-package.html#python-package-dependencies)
        50
    shadownet   185 天前 via iPhone
    @youngxu conda 在 win macos 经常出现无法更新 我已经放弃
        51
    silkriver   185 天前
    conda 需要设置境内镜像源,实际上 pip 也需要,否则就算可以更新也慢。
        52
    way2create   185 天前
    作为一个不搞 py 的 有时候用 py 的库干点什么 都是用 pycharm 的 venv install 的
        53
    youngxu   185 天前 via Android
    @shadownet 你没换清华源吧
        54
    Qzier   185 天前
    大项目:pipenv install
    脚本:python -m venv venv
    python 版本管理:pyenv
        55
    lonelygo   185 天前
    pipenv 看起来挺美,玩玩可以,用的真不爽啊。
    pyenv 多好用啊。
        56
    zhanlingjie   185 天前
    @Cbdy 我感觉基于语言层面跑一个容器是不是有点浪费
        57
    Cbdy   184 天前 via Android
    @zhanlingjie 你都用 Python 了还在乎这点性能开销?
        58
    fakepoet   184 天前
    pyenv
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4381 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 548ms · UTC 03:12 · PVG 11:12 · LAX 20:12 · JFK 23:12
    ♥ Do have faith in what you're doing.