安装#

概述#

安装的第一步 astropy 是为了确保您拥有一个Python环境, isolated 来自您的系统Python安装。这很重要因为 astropy 具有许多依赖项,并且您不想通过安装这些依赖项的不兼容版本而意外损坏您的系统。

对于本安装指南,我们使用 conda 包管理器由 miniforge .这是一个受欢迎的选择并且效果良好,尤其是对于新人来说。它易于在所有平台上安装和使用,并且可以轻松安装最新的Python版本。如果您已经有一个 miniforge - 基于Python环境,那么您可以跳到 安装 astropy .

经验丰富的用户的另一个选择是虚拟环境管理器,例如Python标准库 venv module.如果您选择此选项,有许多资源可以帮助您以这种方式设置虚拟环境。

备注

我们 do not recommend 使用 astropy 与现有 minicondaAnaconda Python 分布的 astropy 由Anaconda Inc.提供的包裹在 defaults 频道可能已经过时,并且这些发行版可能需要许可证才能在大型组织中使用。而应使用 miniforge 如下所述

一旦你有一个Python环境设置,你将安装 astropy 使用 pipconda .在这里我们使用文档 pip 因为安装可选依赖项更容易,但可以随意使用 conda 如果你愿意的话。

安装 miniforge#

您将首先安装Python miniforge .这提供了以下 conda package manager 默认远程包存储库设置为社区主导 conda-forge 频道

在新终端(Windows上的miniforge提示符)中运行 conda list 来测试安装是否有效

创建Python环境#

创建新的Python环境, astropy 和其他包,首先启动终端(在类UNIX系统下)或miniforge提示(在Windows下)。现在我们将创建并激活一个新的虚拟环境来安装 astropy 进入:

$ conda create --channel conda-forge  --name astropy python
$ conda activate astropy

在这种情况下,我们创建的环境被命名为 astropy 但您可以使用任何您喜欢的名字。

将来当你做一个新的终端时,你需要运行 conda activate astropy 来激活这个环境。

安装 astropy#

您可以安装 astropy 而您的其余依赖项则使用 pipconda .这两种方法都得到了充分支持,并且效果良好。

警告

创建了基本Python环境后, conda ,您应该尝试坚持使用一种方法在您的环境中安装新包。特别是, conda 不知道安装了带有的包 pip 并且可能会覆盖它们。

使用PIP#

安装 astropy 和您选择的 dependencies ,运行以下命令之一::

python -m pip install astropy                # Minimum required dependencies
python -m pip install "astropy[recommended]" # Recommended dependencies
python -m pip install "astropy[all]"         # All optional dependencies
python -m pip install "astropy[dev_all]"     # All optional and test dependencies

在大多数情况下,这将安装预编译版本的 astropy (称为a wheel ).但是,如果您要在非常用平台上安装astropy,则将从源文件安装astropy。在这种不寻常的情况下,您需要安装C编译器(请参阅 Build from source 下面)才能成功安装。

警告

not 安装 astropy 或其他包使用 sudo 或任何更高的特权。

使用conda#

安装 astropy 以及所需的最小依赖项集,运行::

conda install --channel conda-forge astropy

使用::安装推荐的依赖项

conda install --channel conda-forge scipy matplotlib

使用以下命令安装可选依赖项:

conda install --channel conda-forge ipython jupyter dask h5py pyarrow \
   beautifulsoup4 html5lib bleach pandas sortedcontainers pytz jplephem mpmath \
   asdf-astropy bottleneck fsspec s3fs certifi

测试#

您可以测试新安装的版本 astropy 正在通过 documentation on how to test your installed version of astropy .

要求#

astropy 有以下严格要求:

astropy 还取决于其他一些包的可选功能。以下是特别推荐的:

进一步的依赖关系提供了更具体的功能:

  • h5py: 读/写 Table 对象从/到HDF5文件。

  • BeautifulSoup: 阅读 Table HTML文件中的对象。

  • html5lib: 阅读 Table 对象使用 pandas 读取器。

  • bleach: 在中禁用HTML转义时用于清理文本 Table HTML编写器。

  • ipydatagrid: 用于 astropy.table.Table.show_in_notebook() 在Gluyter笔记本中显示Astropy表, backend="ipydatagrid" .

  • xmllint: 验证VOTABLE XML文件。这是一个安装在Python外部的命令行工具。

  • pandas: 转换 Table 来自/到pandas DataFrame对象的对象。

  • sortedcontainers 为了更快 SCEngine 索引引擎 Table ,但在某些情况下,这可能仍然比默认索引引擎慢。

  • pytz: 指定和转换时区。

  • jplephem: 检索太阳系物体的JPL星历。

  • setuptools: 用于发现用于将装配工插入的入口点 astropy.modeling.fitting .

  • mpmath: 用于#年的‘Kraft-Burrow-Nousek’区间 poisson_conf_interval

  • asdf-astropy >=0.3 或更高版本:允许将各种Astroy类序列化为可移植的、分层的、人类可读的表示形式。

  • bottleneck: 改进了sigma裁剪的性能和其他可能需要计算具有NaN值的数组的统计信息的功能。

  • certifi: 从HTTPS或FTP+TLS站点下载文件时非常有用,以防Python无法在您的系统上找到最新的根CA证书;此包通常已包含在许多Python安装中(例如,作为 requests 包)。

  • pyarrow >=10.0.1 或更晚:读/写 Table 从/到拼图文件的对象。

  • fsspec >=2023.4.0 or later: Enables access to subsets of remote FITS files without having to download the entire file.

  • s3fs >=2023.4.0 or later: Enables access to files hosted in AWS S3 cloud storage.

但是,请注意,只有在需要这些特定功能时,才需要安装这些软件包。 astropy 即使未安装这些依赖项也将导入。

测试时可以选择使用以下软件包:

从源头构建#

如果您想从源代码构建代码,请按照以下说明操作 Creating a development environment .请注意,您可以选择从主存储库克隆,而不是从您的分支克隆::

git clone https://github.com/astropy/astropy.git
cd astropy

除非您正在开发代码或文档或无法访问互联网,否则通常不需要构建文档,因为Astropy文档的稳定、最新和存档版本可在 docs.astropy.org .该过程描述于 Building the Documentation from Source .

测试源代码构建#

看到 latest documentation on how to run the tests in a source checkout of astropy .

安装预构建开发版本#

大多数夜晚都有一个发展快照 astropy 将会被汇编。如果您想要针对Astery的开发版本进行测试,但又不想自己构建它,那么这很有用。您可以看到 available astropy dev snapshots page 以找出目前提供的是什么。

安装这些“恶作剧” astropy 可以通过使用 pip **

python -m pip install --upgrade --extra-index-url https://pypi.anaconda.org/astropy/simple astropy --pre

额外的索引URL告诉我们 pip 要检查 pip Pypi.anaconda.org上的索引,其中存储了夜生活,以及 --pre 命令告诉 pip 安装预发布版本(在本例中 .dev 版本)。

您可以通过运行部分中所述的测试来测试此安装 Running tests on an installed astropy .