我有一个使用YAML的Python程序。我尝试使用pip install yaml
将其安装在新服务器上,并返回以下内容:
$ sudo pip install yaml
Downloading/unpacking yaml
Could not find any downloads that satisfy the requirement yaml
No distributions at all found for yaml
Storing complete log in /home/pa/.pip/pip.log
如何安装Python的yaml包?我正在运行Python 2.7。 (OS:Debian Wheezy)
答案 0 :(得分:460)
你可以在pip中尝试搜索功能,
$ pip search yaml
在简短描述中使用yaml查找PyPI中的包。这揭示了各种包,包括PyYaml,yamltools和PySyck等(注意PySyck docs推荐使用PyYaml,因为syck已经过时了)。现在您知道了一个特定的包名称,您可以安装它:
$ pip install pyyaml
如果你想在Linux系统范围内安装python yaml,你也可以使用包管理器,如aptitude
或yum
:
$ sudo apt-get install python-yaml
$ sudo yum install python-yaml
答案 1 :(得分:82)
pip install pyyaml
如果你没有pip,请运行easy_install pip
安装pip,这是首选软件包安装程序 - Why use pip over easy_install?。如果您更喜欢使用easy_install,那么easy_install pyyaml
答案 2 :(得分:40)
对于MacOSX(mavericks),以下似乎有效:
brew install libyaml
sudo python -m easy_install pyyaml
答案 3 :(得分:19)
pip install PyYAML
如果没有找到或编译libyaml,PyYAML可以在Mavericks上没有它。
答案 4 :(得分:12)
有三种支持YAML的软件包。 Syck(pip install syck
),它实现了2002年的YAML 1.0规范; PyYAML(pip install pyyaml
)遵循2004年的YAML 1.1规范;和ruamel.yaml遵循最新的(YAML 1.2,从2009年)规范。
您可以使用pip install ruamel.yaml
安装YAML 1.2兼容软件包,或者运行现代版本的Debian / Ubuntu(或派生版):
sudo apt-get install python-ruamel.yaml
答案 5 :(得分:6)
基于Debian的系统:
$ sudo aptitude install python-yaml
或更新的python3
$ sudo aptitude install python3-yaml
答案 6 :(得分:1)
“应该有一种-最好只有一种-显而易见的方法。”因此,我再添加一个。这个更像是Debian / Ubuntu的“从源代码安装”,来自https://github.com/yaml/pyyaml
安装libYAML及其标题:
sudo apt-get install libyaml-dev
Download pyyaml来源:
wget http://pyyaml.org/download/pyyaml/PyYAML-3.13.tar.gz
从源代码安装(不要忘记激活您的venv):
. your/env/bin/activate
tar xzf PyYAML-3.13.tar.gz
cd PyYAML-3.13.tar.gz
(env)$ python setup.py install
(env)$ python setup.py test
答案 7 :(得分:1)
以下命令将下载pyyaml
,其中还包括yaml
pip install pyYaml
答案 8 :(得分:0)
对我来说,安装libyaml的开发版本就可以了。
yum install libyaml-devel #centos
apt-get install libyaml-dev # ubuntu
答案 9 :(得分:0)
如果您可以自己创建yaml文件,或者不需要any of these features的常规yaml,建议您使用strictyaml
而不是标准的pyyaml
软件包。
简而言之,默认yaml在安全性,接口和可预测性方面存在一些严重缺陷。 strictyaml
是yaml规范的一个子集,没有这些问题(并且有更好的记录)。
您可以阅读有关problems with regular yaml here
的更多信息 意见:strictyaml
应该是yaml的默认实现,而旧的yaml规范应该被淘汰。
答案 10 :(得分:0)
输入pip3 install yaml或类似Connor pip3 install strictyaml