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
ltoddy
V2EX  ›  Python

Python 一键更新电脑所有第三方依赖的脚本

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

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

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

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

    pip3 list --format legacy | %{ $_.Split(' ')[0]; } | %{&pip3 install -U $_}
    iwishing
        4
    iwishing  
       2018-06-10 09:47:35 +08:00
    不怕更新了依赖以后不能用了?
    ltoddy
        5
    ltoddy  
    OP
       2018-06-10 09:56:12 +08:00
    @iwishing 这又不是小孩过家家,怎么可能随便的 release.
    lrh3321
        6
    lrh3321  
       2018-06-10 09:58:43 +08:00
    @ltoddy 看样子你是没碰到过坑啊,没有写好测试,我也就只敢升小版本号改动的库。
    cloverstd
        7
    cloverstd  
       2018-06-10 09:59:52 +08:00 via iPhone
    @ltoddy 能不能用和 release 没有必然关系,可能别人 release 了某个已弃用的 api
    cyril4free
        8
    cyril4free  
       2018-06-10 09:59:57 +08:00
    哇,楼主竟然敢直接更新=-=会炸的。
    mkeith
        9
    mkeith  
       2018-06-10 10:00:48 +08:00
    谁敢一键跟新所有的依赖啊
    nullcc
        10
    nullcc  
       2018-06-10 10:09:32 +08:00
    我就问一句,你敢在生产环境用吗,敢用的都是真的猛士
    ltoddy
        11
    ltoddy  
    OP
       2018-06-10 10:18:27 +08:00
    我还真敢在生产环境用……
    Tink
        12
    Tink  
       2018-06-10 10:26:37 +08:00 via iPhone
    这怎么敢随便更新啊
    Kilerd
        13
    Kilerd  
       2018-06-10 10:40:25 +08:00
    勇士啊,居然敢全部更新到最高
    jfcherng
        14
    jfcherng  
       2018-06-10 10:58:59 +08:00 via Android
    mkdocs 有依賴更新了大版本,直接爆炸
    lolizeppelin
        15
    lolizeppelin  
       2018-06-10 13:12:38 +08:00 via Android
    不如学学怎么做 rpm
    lolizeppelin
        16
    lolizeppelin  
       2018-06-10 13:15:23 +08:00 via Android
    点开看了一眼 你在搞笑?
    linus3389
        17
    linus3389  
       2018-06-10 13:24:16 +08:00
    第三方为什么叫第三方?
    duan602728596
        18
    duan602728596  
       2018-06-10 13:39:26 +08:00 via iPhone
    npm 都不敢这么干......
    limbo0
        19
    limbo0  
       2018-06-10 14:07:58 +08:00 via Android
    能回滚吗 233
    20015jjw
        20
    20015jjw  
       2018-06-10 15:01:48 +08:00 via Android
    666 lz 怕不是没死过
    ctsed
        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>
    Linxing
        22
    Linxing  
       2018-06-10 17:21:51 +08:00
    全在 virtualenv 中写
    welkinzh
        23
    welkinzh  
       2018-06-10 18:11:08 +08:00 via Android
    升级最新版可能会出现问题,不敢随便升
    ctro15547
        24
    ctro15547  
       2018-06-10 19:38:25 +08:00
    不敢乱更新,都是用特定版本包,最重要是稳! 除非更新包功能特别好..
    ltoddy
        25
    ltoddy  
    OP
       2018-06-10 19:59:30 +08:00
    其实啊,你在公司,当你想要引入一个第三方的 lib 的时候,都要很小心,不能随便就引一个第三方 lib 的。
    当然更新也不是随随便便的。
    但是,谁让我现在还是在校大学生呢,想怎么折腾就怎么折腾。
    (大学生,了不起???
    ytmsdy
        26
    ytmsdy  
       2018-06-11 00:07:49 +08:00 via iPhone
    真正的勇士啊!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   974 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 19:19 · PVG 03:19 · LAX 11:19 · JFK 14:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.