安装#

概述#

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

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

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

备注

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

一旦你有一个Python环境设置,你将安装 astropy 使用 pip 或 conda .在这里我们使用文档 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 而您的其余依赖项则使用 pip 或 conda .这两种方法都得到了充分支持,并且效果良好。

警告

创建了基本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 .