Python 용 yaml 패키지를 어떻게 설치합니까?


347

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 : 데비안 휘지)


사용중인 플랫폼에 대한 정보를 추가하십시오. 리비아 ml. pyyaml.org/wiki/LibYAML 은 순수한 파이썬 패키지가 아니므로 설치가 다를 수 있습니다.
래리 카이

답변:


568

핍에서 검색 기능을 사용해 볼 수 있습니다.

$ pip search yaml

간단한 설명에서 yaml과 함께 PyPI에서 패키지를 찾습니다. PyYaml, yamltools 및 PySyck를 포함한 다양한 패키지가 표시됩니다 ( syck가 오래되었으므로 PySyck 문서 는 PyYaml 사용을 권장합니다). 이제 특정 패키지 이름을 알고 있으면 설치할 수 있습니다.

$ pip install pyyaml

Linux에서 python yaml을 시스템 전체에 설치하려면 aptitude또는 yum다음 과 같은 패키지 관리자를 사용할 수도 있습니다 .

$ sudo apt-get install python-yaml
$ sudo yum install python-yaml

9
적어도 Fedora 21 및 CentOS 7에서 PyYAML 패키지의 이름은 PyYAML그렇지 않습니다 python-yaml.
TNT

3
PyYAML은 2004 년 이전의 YAML 1.1 사양을 구현합니다 (Syck는 더 오래된 1.0 사양). ruamel.yaml 이제 비 오래된 패키지가 구현하는 YAML1.2 사양
안톤

pip 나 package manager가없는 시스템에 있다면 어떻게해야합니까?
FirefoxMetzger

1
@FirefoxMetzger 당신은 파이썬얻고, pip를 얻고 , 소스 에서 LibYAML을 빌드 하고, 마지막으로 PyYAML을 설치할 수 있습니다 . LibYAML는 엄격하게 (느린이기는하지만) 순수 파이썬으로 작동합니다 PyYAML으로 필요하지 않습니다
tutuDajuju

고마워요, 당신의 대답은 내 질문을 완전히 해결했습니다.
wolfog


49

업데이트 : 요즘 설치는 pip로 완료되지만 libyaml은 여전히 ​​C 확장 (mac)을 빌드해야합니다.

brew install libyaml
python -m pip install pyyaml

오래된 방법 :

MacOSX (매버릭스)의 경우 다음이 작동하는 것 같습니다.

brew install libyaml
sudo python -m easy_install pyyaml

6
이것은 내가 시도했을 때 OS X Yosemite에 대한 유일한 해결책입니다.
니마

1
이것은 Yosemite에서 나를 위해 일했지만 OS X python 2.7.6이 아닌 brew의 python 2.7.9에서만 작동했습니다.
David Moles

이것은 내가 시도했을 때 OS X Lion에 대한 유일한 해결책이었습니다. 정말 고마워! 2020 년에 2011 년 운영 체제를 사용했기 때문에 작동하지 않는다고 생각했습니다.
TheTechRobo36414519

20
pip install PyYAML

libyaml을 찾을 수 없거나 컴파일 된 경우 PyYAML은 Mavericks에서이를 수행하지 않고 수행 할 수 있습니다.


Ubuntu 14.04 LTS에서을 libyaml is not found or a compiler error: forcing --without-libyaml사용할 때 오류가 발생했습니다 sudo pip install PyYAML. 어떻게해야합니까? 감사.
hengxin

1
그러나 나는 말했다 Successfully installed PyYAML. 자세한 내용은 pip-PyYAML 을 참조하십시오 . 다시 감사합니다.
hengxin

14

YAML 지원 패키지에는 세 가지가 있습니다. pip install syck2002 년부터 YAML 1.0 사양을 구현하는 Syck ( ); pip install pyyaml2004 년의 YAML 1.1 사양을 따르는 PyYAML ( ); 및 ruamel.yaml 은 최신 (2009 년부터 YAML 1.2) 사양을 따릅니다.

YAML 1.2 호환 패키지를 다음과 함께 사용 pip install ruamel.yaml하거나 최신 버전의 Debian / Ubuntu (또는 파생)를 실행중인 경우 다음 과 같이 설치할 수 있습니다 .

sudo apt-get install python-ruamel.yaml

6

데비안 기반 시스템 :

$ sudo aptitude install python-yaml

python3 이상

$ sudo aptitude install python3-yaml



3

"한 가지 분명한 방법이 있어야한다." 다른 것을 추가하겠습니다. https://github.com/yaml/pyyaml의 데비안 / 우분투 용 "소스에서 설치"와 비슷합니다.

libYAML과 헤더를 설치하십시오 :

sudo apt-get install libyaml-dev

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 

1
이것이 MacOS에 CLoader를 올바르게 설치하는 유일한 방법이었습니다. 이전에 시도 brew install libyaml & pip install pyyaml했지만 python -c 'from yaml import CSafeLoader'계속 실패했습니다
Luis Meraz

1

대신에 strictyaml 을 사용하십시오

yaml 파일을 직접 만들거나 고급 yaml 의 이러한 기능이 필요하지 않은 경우 strictyaml표준 대신 사용 하는 것이 좋습니다.pyyaml 패키지 .

즉, 기본 yaml에는 보안, 인터페이스 및 예측 가능성 측면에서 심각한 결함이 있습니다. strictyaml는 해당 문제가없는 yaml 사양의 하위 집합이며 문서화가 더 좋습니다.

일반 yaml문제 에 대한 자세한 내용은 여기를 참조하십시오.

의견 : strictyaml yaml의 기본 구현이어야하고 이전 yaml 사양은 더 이상 사용되지 않아야합니다.


0

나를 위해 libyaml의 개발 버전을 설치하면됩니다.

yum install libyaml-devel         #centos
apt-get install libyaml-dev       # ubuntu

APT와 비슷한 명령이 있어야한다는 시스템 전체의 Python 설치, tit의 x86-64 아키텍처에 대한 설명을 포함하십시오.
George Sovetov

1
@GeorgeSovetov 완료
Mayank Jaiswal

@MayankJaiswal Python 3 용 개발 버전을 어떻게 설치 하시겠습니까?
Amir
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.