首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >dnf只为平台python安装python3模块。

dnf只为平台python安装python3模块。
EN

Stack Overflow用户
提问于 2022-10-06 09:30:31
回答 1查看 267关注 0票数 0

我目前正在从事一个依赖于python的Ansible项目。对于模块,python3-dnf模块是必需的。在目标服务器(AlmaLinux 8.6)上已经安装了python3-dnf:

代码语言:javascript
复制
$ dnf install python3-dnf
Last metadata expiration check: 3:36:12 ago on Thu 06 Oct 2022 07:42:20 AM CEST.
Package python3-dnf-4.7.0-8.el8.alma.noarch is already installed.
Dependencies resolved.
Nothing to do.
Complete!

我发现,python3-dnf只为平台-python版本3.6安装:

代码语言:javascript
复制
$ ls -l /usr/lib/python3.6/site-packages/
[...]
drwxr-xr-x.  9 root root 4.0K Oct  6 11:08 dnf
drwxr-xr-x.  3 root root 4.0K May 10 19:36 dnf-plugins
drwxr-xr-x.  3 root root   44 Sep  5 10:29 dnfpluginscore

$ /usr/libexec/platform-python
Python 3.6.8 (default, Sep 13 2022, 07:19:15)
[GCC 8.5.0 20210514 (Red Hat 8.5.0-10)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dnf
>>>

因为当我尝试用最新安装的python版本3.9导入dnf时:

代码语言:javascript
复制
Python 3.9.7 (default, Apr 21 2022, 08:39:11)
[GCC 8.5.0 20210514 (Red Hat 8.5.0-10)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import dnf
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'dnf'

因此,我的问题是:是否可以告诉dnf ( dnf install python3-dnf ) insall模块不是用于平台- python版本,而是用于最新的python版本,或者指定python版本?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-06 11:26:47

我发现,python3-dnf只为平台-python3.6Version安装:

dnf只能安装AlmaLinux版本的Python模块。如果您使用dnf install python3,您将有一个/usr/bin/python3二进制文件,它可以看到使用dnf安装的dnf模块。

如果通过其他机制安装Python3.9,则需要手动管理依赖项。

我目前正在开发一个依赖于python的Ansible项目。

由于您使用的是Ansible,一种选择是通过设置ansible_python_interpreter=/usr/libexec/platform-python来简单地使用platform-python版本。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73971549

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档