首页   注册   登录
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 一键更新电脑所有第三方依赖的脚本

  •  
  •   ltoddy · 2018-06-10 08:32:12 +08:00 · 4212 次点击
    这是一个创建于 522 天前的主题,其中的信息可能已经有所发展或是发生改变。

    https://github.com/ltoddy/Python-useful/tree/master/update

    (这个脚本是新版 pip 的方式, pip>10)

    26 回复  |  直到 2018-06-11 00:07:49 +08:00
        1
    fyibmsd   2018-06-10 08:35:32 +08:00   ♥ 1
    pip list --format legacy | awk '{print $1}' | xargs pip install --upgrade
        2
    ltoddy   2018-06-10 08:55:56 +08:00
    @fyibmsd 厉害
    不过也得考虑 windows 用户。
        3
    NoAnyLove   2018-06-10 09:33:47 +08:00
    Powershell 不会用,google 了一下,然后参照一楼写了个适合 Windows 用户的:

    pip3 list --format legacy | %{ $_.Split(' ')[0]; } | %{&pip3 install -U $_}
        4
    iwishing   2018-06-10 09:47:35 +08:00
    不怕更新了依赖以后不能用了?
        5
    ltoddy   2018-06-10 09:56:12 +08:00
    @iwishing 这又不是小孩过家家,怎么可能随便的 release.
        6
    lrh3321   2018-06-10 09:58:43 +08:00
    @ltoddy 看样子你是没碰到过坑啊,没有写好测试,我也就只敢升小版本号改动的库。
        7
    cloverstd   2018-06-10 09:59:52 +08:00 via iPhone
    @ltoddy 能不能用和 release 没有必然关系,可能别人 release 了某个已弃用的 api
        8
    cyril4free   2018-06-10 09:59:57 +08:00
    哇,楼主竟然敢直接更新=-=会炸的。
        9
    mkeith   2018-06-10 10:00:48 +08:00
    谁敢一键跟新所有的依赖啊
        10
    nullcc   2018-06-10 10:09:32 +08:00
    我就问一句,你敢在生产环境用吗,敢用的都是真的猛士
        11
    ltoddy   2018-06-10 10:18:27 +08:00
    我还真敢在生产环境用……
        12
    Tink   2018-06-10 10:26:37 +08:00 via iPhone
    这怎么敢随便更新啊
        13
    Kilerd   2018-06-10 10:40:25 +08:00
    勇士啊,居然敢全部更新到最高
        14
    jfcherng   2018-06-10 10:58:59 +08:00 via Android
    mkdocs 有依賴更新了大版本,直接爆炸
        15
    lolizeppelin   2018-06-10 13:12:38 +08:00 via Android
    不如学学怎么做 rpm
        16
    lolizeppelin   2018-06-10 13:15:23 +08:00 via Android
    点开看了一眼 你在搞笑?
        17
    linus3389   2018-06-10 13:24:16 +08:00
    第三方为什么叫第三方?
        18
    duan602728596   2018-06-10 13:39:26 +08:00 via iPhone
    npm 都不敢这么干......
        19
    limbo0   2018-06-10 14:07:58 +08:00 via Android
    能回滚吗 233
        20
    20015jjw   2018-06-10 15:01:48 +08:00 via Android
    666 lz 怕不是没死过
        21
    ctsed   2018-06-10 15:50:23 +08:00
    升级所有库

    sudo pip3 freeze --local | grep -v '^-e' | cut -d = -f 1 | xargs -n1 sudo pip3 install --upgrade -i https://pypi.mirrors.ustc.edu.cn/

    sudo pip2 freeze --local | grep -v '^-e' | cut -d = -f 1 | xargs -n1 sudo pip2 install --upgrade -i https://pypi.mirrors.ustc.edu.cn/



    for /F "delims===" %i in ('pip3 freeze -l') do pip3 install -U %i

    for /F "delims===" %i in ('pip2 freeze -l') do pip2 install -U %i

    for /F "delims= " %i in ('pip list --outdated') do pip install -U %i

    来自 <https://stackoverflow.com/questions/2720014/upgrading-all-packages-with-pip>
        22
    Linxing   2018-06-10 17:21:51 +08:00
    全在 virtualenv 中写
        23
    welkinzh   2018-06-10 18:11:08 +08:00 via Android
    升级最新版可能会出现问题,不敢随便升
        24
    ctro15547   2018-06-10 19:38:25 +08:00
    不敢乱更新,都是用特定版本包,最重要是稳! 除非更新包功能特别好..
        25
    ltoddy   2018-06-10 19:59:30 +08:00
    其实啊,你在公司,当你想要引入一个第三方的 lib 的时候,都要很小心,不能随便就引一个第三方 lib 的。
    当然更新也不是随随便便的。
    但是,谁让我现在还是在校大学生呢,想怎么折腾就怎么折腾。
    (大学生,了不起???
        26
    ytmsdy   2018-06-11 00:07:49 +08:00 via iPhone
    真正的勇士啊!
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4238 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 27ms · UTC 03:24 · PVG 11:24 · LAX 19:24 · JFK 22:24
    ♥ Do have faith in what you're doing.