【问题标题】:pip3 is not installing packages for python3 [duplicate]pip3没有为python3安装包[重复]
【发布时间】:2018-12-31 14:34:10
【问题描述】:

当我使用 python3 运行我的 python 脚本时,我收到以下错误:

Traceback(最近一次调用最后一次):文件“rea_scrape.py”,第 2 行,在 导入请求 ModuleNotFoundError: 没有名为“请求”的模块

当我运行pip3 install requests 时,很明显请求已安装。

要求已经满足:请求在 /Library/Python/2.7/site-packages (2.18.4) 已要求 满意:/Library/Python/2.7/site-packages 中的 certifi>=2017.4.17 (来自请求)(2018.4.16)已满足要求: /Library/Python/2.7/site-packages 中的 chardet=3.0.2 (来自 requests) (3.0.4) 要求已经满足:idna=2.5 in /Library/Python/2.7/site-packages(来自请求)(2.6)要求 已经满足: urllib3=1.21.1 in /Library/Python/2.7/site-packages(来自请求)(1.22)

但是,仔细检查这些消息似乎表明 pip3 正在为 Python2.7 安装包,这不是我的意图。

结果是我使用pip3 命令安装的任何东西都不能导入到python3 运行的脚本中。

我该如何解决这个问题?

仅供参考,我使用的是 MacOS High Sierra。

【问题讨论】:

    标签: python python-3.x python-2.7


    【解决方案1】:

    看起来您的 pip3 安装指向了错误的 python 版本。如果您查看/usr/local/bin 中的文件,您可以看到一个名为 pip3 的文件。在哪里可以看到它指向的 python 版本。就我而言,该文件的内容如下:

    #!/usr/bin/python3
    
    # -*- coding: utf-8 -*-
    import re
    import sys
    
    from pip import main
    
    if __name__ == '__main__':
        sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
        sys.exit(main())
    

    在您的情况下,第一行必须是 #!usr/bin/python2 。您可以在终端上使用pip3 -V 来验证这一点。

    解决此问题的另一种方法是完全卸载您的 pip3 安装并再次重新安装 python3-pip

    1. 卷曲https://bootstrap.pypa.io/get-pip.py | python3
    2. python3 从这个答案:How to install pip for Python 3 on Mac OS X?

    另外请看这个问题:pip3.4 -V refers to python2.7 installation 这个问题应该可以完全回答你。

    【讨论】:

      猜你喜欢
      • 2018-04-25
      • 1970-01-01
      • 2018-07-18
      • 2021-01-30
      • 2019-08-23
      • 2020-07-17
      • 2017-10-13
      • 2017-04-27
      • 2021-08-26
      相关资源
      最近更新 更多