快要被 mac 上的 Python 版本和 pip 安装到 site-packages 的位置弄晕了,请教下如何用 pip 把想要的包安装到自己指定的 Python 版本中的 site-packages 中? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hanyceZ
V2EX    问与答
快要被 mac 上的 Python 版本和 pip 安装到 site-packages 的位置弄晕了,请教下如何用 pip 把想要的包安装到自己指定的 Python 版本中的 site-packages 中?
  •  
  •   hanyceZ 2019-12-20 16:13:35 +08:00 3790 次点击
    这是一个创建于 2210 天前的主题,其中的信息可能已经有所发展或是发生改变。

    安装过的途径:

    • 自己之前 brew 装过 pyhton3
    • 官方上也下载过 python3 的版本
    • 也使用过 pyenv 安装过两个版本(目前正使用)
      • 3.7.5
      • 3.8

    现在有些疑问

    这两天 pip 安装后的包进入到了这个目录下的原因是不是:自带的 pip 都会安装到 mac 自带的 python2.7 的 site-packages 中?:

    /Library/Python/2.7/site-packages 

    • 然后我用 pycharm 选择 3.7.5 的解释器为啥会显示我有两个 site-packages ?其中的 libaray root 是什么意思?图片在这
    • 之后用 pip -t 指定了 3.8 为什么也不会将包安装到 3.8 的 site-packages 中?
    • 一直在用 virtualenv,现在不用了 virtualenv 后一大堆问题,
    19 条回复    2019-12-24 12:02:13 +08:00
    hanyceZ
        1
    hanyceZ  
    OP
       2019-12-20 16:15:30 +08:00
    图片分享不出去,,,
    和谐 https://和谐 imgur.和谐 com/6hvYL9j
    vissssa
        2
    vissssa  
       2019-12-20 16:26:16 +08:00
    我是用的 pyenv + pipenv
    nnqijiu
        3
    nnqijiu  
       2019-12-20 16:28:40 +08:00
    就用一个 python 不就可以了,把多余的删掉
    hanyceZ
        4
    hanyceZ  
    OP
       2019-12-20 16:33:31 +08:00
    @nnqijiu 问题就是通过各种途径安装了太多 python 后,都找不到之前安装过的 python 位置、pip 位置、site-packages 位置了,我也想删掉
    gwy15
        5
    gwy15  
       2019-12-20 16:35:18 +08:00
    python3.7 -m pip install package
    python3.8 -m pip install package

    或者:
    alias pip3.7 = python3.7 -m pip
    rogwan
        6
    rogwan  
       2019-12-20 16:40:22 +08:00 via iPhone
    > virtualenv 后一大堆问题

    venv 后遇到什么问题了?
    cxyfreedom
        7
    cxyfreedom  
       2019-12-20 16:49:32 +08:00
    用 python -m pip install
    hanyceZ
        8
    hanyceZ  
    OP
       2019-12-20 16:51:48 +08:00
    @rogwan 大佬你看错了,我之前一直用的就是 venv,很稳。最近想整理整理 mac 上安装过的东西,该删删,该卸卸。于是就出现了上面的问题
    zero469
        9
    zero469  
       2019-12-20 16:52:34 +08:00
    用 conda 吧
    hanyceZ
        10
    hanyceZ  
    OP
       2019-12-20 16:55:17 +08:00
    @gwy15 迫于我之前 mac 上安装过 N 多 python 版本,我已经 alias 了一个默认的 python 版本
    ```
    alias python='/Users/xxxxxx/.pyenv/versions/3.7.5/bin/python'
    ```
    后面再来个
    ```
    alias pip=python -m pip
    ```
    alias-pip 中的 python 也会使用我之前定义的 alias-python 吗
    hanyceZ
        11
    hanyceZ  
    OP
       2019-12-20 16:56:40 +08:00
    这是我 python 的位置,也很懵,有大佬解释下分别是什么的吗
    ```
    [xxx@ ~] where python
    python: aliased to /Users/zhangyihan/.pyenv/versions/3.7.5/bin/python
    /usr/bin/python
    /usr/local/bin/python
    /usr/local/bin/python
    /usr/bin/python
    /usr/local/bin/python
    ```
    GoLand
        12
    GoLand  
       2019-12-20 16:58:43 +08:00
    先把 alias 里的 python 和 pip 干掉。基本是这两个 alias 带来的问题。
    U7Q5tLAex2FI0o0g
        13
    U7Q5tLAex2FI0o0g  
       2019-12-20 17:00:10 +08:00
    ~ which pip
    ~ which pip3
    ~ which python
    ~ which python3
    hanyceZ
        14
    hanyceZ  
    OP
       2019-12-20 17:04:14 +08:00
    @littleylv
    ```
    [xx@xxx ~] which pip
    /usr/local/bin/pip
    [xxx@xxx ~] which pip3
    /usr/bin/pip3
    [xxx@xxx ~]
    [xxx@xxx ~] which python
    python: aliased to /Users/xxxxx/.pyenv/versions/3.7.5/bin/python
    [xxx@xxx ~] which python3
    /usr/bin/python3
    ```
    gwy15
        15
    gwy15  
       2019-12-20 17:06:49 +08:00
    默认 pip (/usr/bin/pip) 会调用 /usr/bin/python3,所以不会识别你的 alias python

    我还是建议你
    alias pip3.7 = /usr/bin/python3.7 -m pip
    lau52y
        16
    lau52y  
       2019-12-20 20:28:51 +08:00 via iPhone
    anaconda,然后设置为 anaconda 的 python,快速又不麻烦
    Kobayashi
        17
    Kobayashi  
       2019-12-21 21:12:41 +08:00 via Android
    又遇到一个不读 pyenv README 的,你这是 pyenv 没有初始化
    conn4575
        18
    conn4575  
       2019-12-22 06:53:31 +08:00 via Android
    通过 brew install 的 python3,保留,单只提供给一些系统依赖使用,自己的写的程序不要用,与之对应的是 pip3,而不是 pip
    自己安装的 python,相关目录都删掉
    各种 alias 的骚操作,删掉
    自己需要用的 pyhon 全部都用 pyenv 安装,每次使用前也需要用 pyenv activate xxx 激活环境
    pycharm 里选择的解释器也要选择 pyenv 安装的版本
    julyclyde
        19
    julyclyde  
       2019-12-24 12:02:13 +08:00
    pip 不是独立的 pip
    pip 是 python 里的一个库
    你用哪个 pip,就是用哪个 python
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5196 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 24ms UTC 08:53 PVG 16:53 LAX 00:53 JFK 03:53
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86