我刚刚安装了 astropy,但是当我尝试在 jupyter 实验室中运行
import astropy
时,它显示找不到模块。
我将终端中的目录更改为我的笔记本所在的目录,然后运行代码
import astropy
try:
astropy.system_info()
except AttributeError:
import platform; print(platform.platform())
import sys; print("Python", sys.version)
import astropy; print("astropy", astropy.__version__)
import numpy; print("Numpy", numpy.__version__)
import erfa; print("pyerfa", erfa.__version__)
try:
import scipy
print("Scipy", scipy.__version__)
except ImportError:
print("Scipy not installed")
try:
import matplotlib
print("Matplotlib", matplotlib.__version__)
except ImportError:
print("Matplotlib not installed")
显示输出:
macOS-14.6.1-arm64-arm-64bit
Python 3.11.1 (v3.11.1:a7a450f84a, Dec 6 2022, 15:24:06) [Clang 13.0.0 (clang-1300.0.29.30)]
astropy 6.1.3
Numpy 2.1.1
pyerfa 2.0.1.4
Scipy not installed
Matplotlib not installed
所以,我可以假设问题不在于 pip 安装,对吧?但是,那么如何让事情顺利进行呢?
当前(和旧版)AstroPy 包中的
system_info()
函数可以在 astropy.utils.system_info.system_info()
找到。
然而,这没有记录。
对于目前不稳定的 AstroPy 版本 7,它已移至全局命名空间中,您可以在代码中使用它。但目前还不行。
由于几乎没有理由实际使用
system_info()
(Python 中的其他模块无法做到这一点,并且没有提供天文价值),所以我建议不要使用它,并且不要纠结于全局中缺少的这个特定函数命名空间。
您应该首先检查 astropy 是否出现在当前 python 安装的模块列表中。 如果您使用的是 Linux:“pip freeze > my_py_packages.txt” 打开新创建的文件 my_py_packages.txt 并查看 astropy 是否存在,如果存在则意味着 Jupyter Notebook 在识别系统上的包时出现问题。
我建议使用 conda 创建自定义环境,并在那里安装所有项目依赖项,并在该项目创建的环境中启动 jupyter Notebook。