虚拟环境中的pyROOT

3
我想在 virtualenv 中使用 pyROOT,我已经在系统中安装了 ROOT,在 virtualenv 外部,我可以做到 import ROOT 并且正常工作,但是在 virtualenv 中执行 import ROOT 会报以下错误:
ModuleNotFoundError: No module named 'ROOT'

我该如何添加 ROOT 呢?

先行致谢。

4个回答

2

您需要在虚拟环境中安装root。激活环境后运行pip install命令即可。


root不是Python包,它是C++框架,您只需使用系统软件包管理器安装即可,在Python中可以直接使用它(至少在虚拟环境之外)。 - A Deshmukh
@ADeshmukh,我相信ROOT是一个C++框架,而pyROOT是一个Python模块,它在其周围包装了一个Python API。因此,这个答案是有道理的... OP应该在虚拟环境中尝试pip install pyroot - CryptoFool

0

您需要将ROOT添加到Python路径中。 这可以通过创建一个名为PYTHONPATH的环境变量并将其值设置为root安装目录中的bin文件夹来实现。

在Windows上,它看起来像这样: enter image description here

要验证是否成功,请

import sys
print(sys.path)

并检查bin目录是否存在。


0

和许多Python包一样,Python对ROOT框架的支持也分为两部分...一个是C++框架,另一个是该框架周围的Python绑定。在这种情况下,C++框架和Python绑定都由同一组提供,因此在同一个网站上进行讨论。https://root.cern是该框架的主页https://root.cern/manual/pythonPython模块页面

首先应安装C++框架。如何安装将因平台而异。然后,应通过以下命令将Python模块安装到每个要使用ROOT框架的Python版本和/或虚拟环境中:

pip install pyroot

假设你在目录~/envs/myenv下有一个虚拟环境。那么你需要执行以下操作:
source ~/envs/myenv/bin/activate
pip install pyroot

0

安装pyroot。 尝试使用“pyroot file.py”而不是“python file.py”


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接