为什么当我执行 pip install numpy 时,名为 f2py 的脚本被安装到 /home/***/.local/bin ?

问题描述 投票:0回答:1

我使用的是 Linux Mint 21.2,我使用 pip 安装了 numpy:

pip install numpy
。我收到以下消息:

Defaulting to user installation because normal site-packages is not writeable
Collecting numpy
    Downloading numpy ...
Installing collected packages: numpy
  WARNING: The script f2py is installed in '/home/***/.local/bin' which is not on PATH.
  Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Successfully installed numpy-1.26.2

然后我检查了

python3 -m pip list -v
,几乎所有包裹都在
/usr/lib/python3/dist-packages
中。
numpy
的位置是
/home/***/.local/lib/python3.10/site-packages pip

这是什么意思?我什至不知道

f2py
是什么。我做错什么了吗?我在
/home/***/
的某个随机目录中。当我执行
pip install some-library
时,我应该在特定目录中吗?我可以以某种方式将 numpy 移动到
/usr/lib/python3/dist-packages
因为所有其他包似乎都在那里吗?

linux numpy pip f2py
1个回答
0
投票

它作为 NumPy 的一部分安装。 NumPy 之所以有它,是因为 NumPy 的许多线性代数例程都是用 Fortran 编写的,而 f2py 提供了外部函数接口来调用它们。如果您想从 Python 调用您自己的 Fortran 代码,它也会被安装。您可以从 NumPy 手册了解更多相关信息。

关于警告:一些Python包被用作独立的命令行工具,而不仅仅是作为Python程序的一部分。程序 f2py 就是其中之一。通常,您会在终端输入

f2py
,这将运行 f2py。但是,由于 pip 安装这些的目录不在您的 $PATH 上,因此这将不起作用。

您可以执行以下两件事之一:

  1. 确定您不关心使用 f2py。 NumPy 仍将正常工作,但您无法添加任何新的 Fortran 代码。

  2. 将 pip 的

    .local/bin
    目录添加到 $PATH 中。以下是一个答案的链接,解释了如何在 Linux 上的 Bash 中执行此操作。 https://stackoverflow.com/a/74751638/530160

    如果您使用不同的 shell,例如 Zsh,则需要编辑不同的文件。

© www.soinside.com 2019 - 2024. All rights reserved.