Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
pip路径:anaconda vs.原生python(在macOS上)_Python_Python 3.x_Ffmpeg_Pip - Fatal编程技术网

pip路径:anaconda vs.原生python(在macOS上)

pip路径:anaconda vs.原生python(在macOS上),python,python-3.x,ffmpeg,pip,Python,Python 3.x,Ffmpeg,Pip,我正在使用macOS X,并于4月份安装了本机Python 3.8,此版本的软件包存储在: /Users/hubert/Library/Python/3.8/lib/python/site-packages/ 几周后的5月,我安装了Anaconda,但它的软件包使用了不同的路径: /Users/hubert/opt/anaconda3/lib/python3.7/site-packages/ 今天,我需要安装一个新的包,用于原生Python脚本。我键入: pip install ffmpeg

我正在使用macOS X,并于4月份安装了本机Python 3.8,此版本的软件包存储在:

/Users/hubert/Library/Python/3.8/lib/python/site-packages/
几周后的5月,我安装了Anaconda,但它的软件包使用了不同的路径:

/Users/hubert/opt/anaconda3/lib/python3.7/site-packages/
今天,我需要安装一个新的包,用于原生Python脚本。我键入:

pip install ffmpeg
我有一个成功的消息。但是当我想运行我的脚本时,它找不到ffmpeg。我重新启动了Mac,但脚本仍然找不到它。所以我再次尝试了
pip安装ffmpeg
。现在我确实收到了这个信息:

Requirement already satisfied: ffmpeg in ./opt/anaconda3/lib/python3.7/site-packages (1.4)
但很明显,当地的蟒蛇想让它走另一条路

我的问题是:

  • 将目录
    ffmpeg
    ffmpeg-1.4.dist info
    从anaconda目录复制到本机目录是否保存
  • 如何告诉pip使用本机Python目录安装新软件包
  • 合并两个站点包目录是一个好主意吗?如果这是个好主意:让原生Python 3.8和Anaconda(显然使用Python 3.7)使用相同的站点包目录的最佳方式是什么
  • 手动修改站点包是个好主意吗? 可能不会。您所面临的问题是像Anaconda这样的虚拟环境管理器所要避免的问题。如果你开始弄乱网站包,至少你会冒在依赖关系树中产生很多新问题的风险。除非您需要在同一个shell提示符中同时使用两个不同的python安装,否则,如果您只使用Anaconda来管理所有环境,您的生活会轻松得多

    (请记住,在安装了
    ffmpeg
    的情况下创建新的Python 3.8安装与
    conda create-n mynewenv Python=3.8 ffmpeg
    一样简单。然后,只要想在安装了
    ffmpeg
    的情况下使用Python 3.8,就运行
    conda activate mynewenv
    。)

    如何使用pip在正确的位置安装软件包 使用正确的pip副本 最简单的方法是确保您使用的是正确的
    pip
    。在MacOS或Linux上,您可以通过在开始安装之前运行
    哪个python
    哪个pip
    来实现这一点。如果要安装到本机Python,在开始运行
    pip
    命令之前,可能必须先运行
    conda deactivate

    搜索路径中的
    pip
    实际上可能是一个符号链接,因此值得使用
    文件-h$(哪个pip)
    检查这一点。(在我的例子中,我有几个版本的Python安装在自制软件中,它喜欢将东西符号链接到
    /usr/local/bin

    例子
    (base)~$which python
    /miniconda3/bin/python
    (基本)~$哪个pip
    /miniconda3/箱子/管道
    (基本)~$conda停用
    ~$哪条蟒蛇
    /usr/local/bin/python
    哪一点
    /usr/本地/bin/pip
    ~$file-h$(哪个pip)
    /usr/local/bin/pip:指向../ceral的符号链接/python@2/2.7.16_1/bin/pip
    
    请注意,本机安装的Python 3.8的
    pip
    可能称为
    pip3

    检查pip在哪里发送东西 您可以通过检查特定软件包的安装位置来检查
    pip
    /
    pip3
    安装的位置。如果从
    哪个pip
    看不出安装位置,这可以是一种双重检查东西安装位置的方法

    例子
    ~$pip列表
    软件包版本
    ----------------------------- ---------
    ...
    车轮0.33.4
    ~$pip显示轮
    名称:车轮
    版本:0.33.4
    摘要:Python的内置包格式。
    主页:https://github.com/pypa/wheel
    作者:Daniel Holth
    作者电子邮件:dholth@fastmail.fm
    执照:麻省理工学院
    位置:/usr/local/lib/python2.7/site-packages
    要求:
    要求:
    
    注意
    位置
    行。

    可能或