Mam program w języku Python, który używa YAML. Próbowałem zainstalować go na nowym serwerze przy użyciu pip install yaml
i zwraca następujące informacje:
$ 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
Jak zainstalować pakiet yaml dla Pythona? Używam Python 2.7. (OS: Debian Wheezy)
Odpowiedzi:
Możesz wypróbować funkcję wyszukiwania w pip,
który szuka pakietów w PyPI z yaml w krótkim opisie. To ujawnia różne pakiety, w tym między innymi PyYaml, yamltools i PySyck (zauważ, że dokumenty PySyck zalecają używanie PyYaml, ponieważ syck jest nieaktualny). Teraz znasz konkretną nazwę pakietu, możesz ją zainstalować:
Jeśli chcesz zainstalować python yaml w całym systemie Linux, można również użyć menedżera pakietów, jak
aptitude
iyum
:źródło
PyYAML
nie jestpython-yaml
.pip install pyyaml
Jeśli nie masz pip, uruchom,
easy_install pip
aby zainstalować pip, który jest instalatorem pakietu go-to - Po co używać pip zamiast easy_install? . Jeśli wolisz trzymać się easy_install, toeasy_install pyyaml
źródło
Aktualizacja: obecnie instalacja odbywa się za pomocą pip, ale libyaml jest nadal wymagany do zbudowania rozszerzenia C (na Macu):
Nieaktualna metoda :
W przypadku systemu MacOSX (indywidualnego) wydaje się, że działają:
źródło
Jeśli libyaml nie zostanie znaleziony lub skompilowany, PyYAML może obejść się bez Mavericks.
źródło
libyaml is not found or a compiler error: forcing --without-libyaml
podczas używaniasudo pip install PyYAML
. Co powinienem zrobić? Dzięki.Successfully installed PyYAML
. Aby uzyskać pełne informacje, patrz pip-PyYAML . Dzięki jeszcze raz.Istnieją trzy pakiety obsługujące YAML. Syck (
pip install syck
), który implementuje specyfikację YAML 1.0 od 2002 roku; PyYAML (pip install pyyaml
) zgodny ze specyfikacją YAML 1.1 z 2004 r .; i ruamel.yaml, który jest zgodny z najnowszą specyfikacją (YAML 1.2, od 2009 r.).Możesz zainstalować pakiet kompatybilny z YAML 1.2 z
pip install ruamel.yaml
lub jeśli korzystasz z nowoczesnej wersji Debian / Ubuntu (lub pochodnej) z:źródło
Systemy oparte na Debianie:
$ sudo aptitude install python-yaml
lub nowszy dla python3
$ sudo aptitude install python3-yaml
źródło
pobierze następujące polecenie
pyyaml
, które obejmuje równieżyaml
źródło
„Powinien istnieć jeden - a najlepiej tylko jeden - oczywisty sposób”. Pozwólcie, że dodam jeszcze jeden. Ten bardziej przypomina „zainstaluj ze źródeł” dla Debiana / Ubuntu, z https://github.com/yaml/pyyaml
Zainstaluj libYAML i jego nagłówki:
Pobierz źródła pyyaml:
Zainstaluj ze źródeł, (nie zapomnij aktywować venv):
źródło
brew install libyaml & pip install pyyaml
alepython -c 'from yaml import CSafeLoader'
ciągle mi się nieZamiast tego użyj strictyaml
Jeśli masz luksus samodzielnego tworzenia pliku yaml lub jeśli nie potrzebujesz żadnej z tych funkcji zwykłego yaml, zalecamy użycie
strictyaml
zamiast standardowegopyyaml
pakietu.Krótko mówiąc, domyślny yaml ma poważne wady w zakresie bezpieczeństwa, interfejsu i przewidywalności.
strictyaml
jest podzbiorem specyfikacji yaml, który nie ma tych problemów (i jest lepiej udokumentowany).Możesz przeczytać więcej o problemach ze zwykłym yaml tutaj
OPINIA:
strictyaml
powinna być domyślną implementacją yaml, a stara specyfikacja yaml powinna być przestarzała.źródło
Zrobiłem to, instalując wersję programistyczną libyaml.
źródło