Python 包版本满意,但没有出现

Python package version sastisfied, but does not appear

当我运行命令时:

sudo pip3 install seaborn==0.11.1

我得到:

Requirement already satisfied: seaborn==0.11.1 in /usr/local/lib/python3.8/dist-packages (0.11.1)

但是,当我检查 python3 中的版本时,我得到:

$ python3
Python 3.8.5 (default, Jan 27 2021, 15:41:15) 
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import seaborn as sns
>>> sns.__version__
'0.10.1'

我该如何解决这个问题,我对 python 软件包有什么不了解?

编辑: 从安装命令中删除 sudo 解决了这个问题,非常感谢!

当我们谈到这个话题时:为什么使用 sudo apt install python3-<package> 安装也可以使软件包可用于 user,而 sudo pip3 install <package> 不能?

您正在以 root 用户身份安装软件包,但 运行ning python3 用户身份。

以用户身份安装软件包:pip3 install seaborn==0.11.1 --user 和 运行 python3 用户身份。

以 root 身份安装软件包:pip3 install seaborn==0.11.1 和 运行 sudo python3 以 root 身份。

关于评论中的第二个问题

why does installing with sudo apt install python3- also make the package available for user, while sudo pip3 install does not?

apt 为所有用户安装,因为它们不是安装在特定用户的主文件夹中,而是安装在 usr 文件夹中。每个用户都将在他们的帐户中拥有自己的文件,用于保存首选项和数据,但作为访客登录的用户除外,因为他们的数据在注销时被删除。

pip3 没有为所有可用用户安装的问题可能与 umask 有关,请尝试卸载软件包 pip3 uninstall seaborn,更改 umask cd ~ && umask 022 , 以 root sudo pip3 install seaborn==0.11.1

再次安装

umask是设置文件/目录默认访问权限的命令,大家可以阅读here