问题描述
以下内容摘自?- arithmetic_expression(..[+,5,7]).
ERROR: Syntax error: Operator expected
ERROR: arithmetic_expression(.
ERROR: ** here **
ERROR: .[+,7]) .
文件。我了解requirements.txt
指定版本后的值。 ==
之后的值指定什么?我可以排除它吗?
=
解决方法
如果文件是通过导出conda环境创建的,则会发生这种情况(在这种情况下,通常应将其称为environment.yml
之类的文件,即yml文件)。
如果使用基本命令创建了此文件
conda env export > environment.yml
它导出最严格的软件包定义,其中包括内部版本号(这是在第二个=
之后看到的内容),并且通常是特定于操作系统的。这样可以保证您可以精确地复制与原始环境相同的环境(但在其他操作系统上也无法使用)。 this question中也记录了该问题。在大多数情况下,没有它应该没问题,您可以自由删除内部版本号。如果可以访问此环境,则可以“正确”导出它,例如
conda env export > environment.yml --no-build
,
这表示您实际上并没有第requirements.txt
file个点。这是一个conda导出文件,可能是用conda list --export
创建的,不能用pip处理。
=
之后的值只是一个build string,您可能会认为它是一个标识符,可以安装此完全相同的内部版本。这里的版本号是不够的,因为您可能具有相同版本的不同版本。
示例显示了您引用的h7b6447c_0
软件包的xz
构建:
$ conda search xz=5.2.5 --info
Loading channels: done
xz 5.2.5 h7b6447c_0
-------------------
file name : xz-5.2.5-h7b6447c_0.tar.bz2
name : xz
version : 5.2.5
build : h7b6447c_0
build number: 0
size : 438 KB
license : LGPL-2.1 and GPL-2.0
subdir : linux-64
url : https://repo.anaconda.com/pkgs/main/linux-64/xz-5.2.5-h7b6447c_0.tar.bz2
md5 : e17620ef8fc8654e77f53b4f2995b288
timestamp : 2020-04-16 04:36:07 UTC
dependencies:
- libgcc-ng >=7.3.0
,
由于requirements.txt文档的原因,与它们无关,对于 pip 来说,它们似乎毫无意义。
https://pip.pypa.io/en/stable/reference/pip_install/#requirements-file-format