- Модуль PyYAML, парсер YAML для Python.
- Синтаксический анализатор (парсер) YAML для Python.
- Установка модуля PyYAML в виртуальное окружение:
- Как установить пакет yaml для Python?
- 10 ответов
- Вместо этого используйте strictyaml
- Похожие вопросы:
- Как мне установить пакет yaml для Python?
- Используйте strictyaml вместо этого
- Installing yaml for Python 3.6 through pip #132
- Comments
- Amir-Arsalan commented Feb 13, 2018
- henryborchers commented Feb 13, 2018
- mei-li commented Feb 14, 2018
- Amir-Arsalan commented Feb 14, 2018
- mei-li commented Feb 14, 2018
- Amir-Arsalan commented Feb 14, 2018
- ingydotnet commented Feb 15, 2018 •
- feluxe commented Feb 16, 2018
- wumpus commented Feb 27, 2018
- Amir-Arsalan commented Feb 27, 2018
- KevinDCruz commented Jun 8, 2018
- rishikesh67 commented Feb 25, 2019
- How do I install the yaml package for Python?
- 11 Answers 11
- Use strictyaml instead
Модуль PyYAML, парсер YAML для Python.
Синтаксический анализатор (парсер) YAML для Python.
Язык разметки YAML — это удобный для людей стандарт сериализации данных, предназначенный для удобства чтения человеком и взаимодействия со скриптовыми языками, ориентированный на удобство ввода-вывода типичных структур данных. Разметка YAML часто используется для написания конфигурационных файлов.
Модуль pyyaml — это синтаксический анализатор языка разметки YAML 1.1 для Python, имеет поддержку pickle , способный к расширению API. PyYAML поддерживает стандартные теги YAML и предоставляет специфичные для Python теги, которые позволяют представлять произвольный объект Python.
Модуль PyYAML применим для широкого спектра задач — от сложных конфигурационных файлов до сериализации объектов и персистентности. Официальным рекомендуемым расширением имени файла для файлов YAML является .yaml . Так же смотрите «Синтаксис документа YAML»
Установка модуля PyYAML в виртуальное окружение:
Загрузка/чтение документа YAML в Python.
Можно прочитать документ YAML с помощью функции yaml.load() модуля PyYAML. Эта функция анализирует и преобразует объект YAML в словарь dict Python. Этот процесс известен как десериализация YAML в Python.
Загрузка нескольких документов YAML в Python.
Функция yaml.load_all() анализирует данные и возвращает последовательность объектов Python, соответствующих документам YAML.
Загрузка экземпляров классов Python из YAML.
При помощи модуля PyYAML, используя в документе YAML тег !!python/object, могут быть загружены и созданы экземпляры классов Python. Так же рассмотрена безопасная загрузка классов при помощи функции Функция yaml.safe_load().
Сохранение/сериализация различных типов Python в файл YAML.
Для сериализации объекта Python в поток YAML необходимо использовать функцию yaml.dump(data, stream) модуля PyYAML. кроме того, можно использовать функцию yaml.safe_dump(data, stream), которая не поддерживает произвольные объекты Python.
Сохранение классов Python в документ YAML.
Модуль PyYAML позволяет выгружать/сохранять экземпляры пользовательских классов Python в поток YAML. Можно определить свои собственные теги для документа YAML для конкретного приложения. Самый простой способ сделать это — определить подкласс yaml.YAMLObject
Синтаксис документа YAML для Python.
В разделе представлен общий синтаксис разметки документа YAML, а так же наиболее распространенные конструкции YAML вместе с соответствующими объектами Python.
Как установить пакет yaml для Python?
У меня есть программа Python, которая использует YAML. Я попытался установить его на новый сервер с помощью pip install yaml , и он возвращает следующее:
Как установить пакет yaml для Python? Я бегу Python 2.7. (OS: Debian хриплый)
10 ответов
Я использую PyCharm 2018.2.4 с Python 3.7. Я хочу запустить некоторые начальные данные, поэтому в консоли управления Python я попытался запустить свой файл yaml, который закончился этой ошибкой manage.py@mainpage_project > loaddata seed_data bash -cl.
Я использую Wing IDE, как мне установить пакет hypothesis Python на свой компьютер? Я уже скачал файл zip, использую ли я командную строку для его установки или в Wing IDE есть опция для этого?
Вы можете попробовать функцию поиска в pip,
который ищет пакеты в PyPI с yaml в кратком описании. Это показывает различные пакеты, включая PyYaml, yamltools и PySyck, среди прочих (обратите внимание, что PySyck docs рекомендуют использовать PyYaml, так как syck устарел). Теперь вы знаете конкретное имя пакета, вы можете установить его:
Если вы хотите установить python yaml в масштабе всей системы в linux, вы также можете использовать менеджер пакетов, например aptitude или yum :
pip install pyyaml
Если у вас нет pip, запустите easy_install pip , чтобы установить pip, который является установщиком пакета go-to — зачем использовать pip вместо easy_install? . Если вы предпочитаете придерживаться easy_install, то easy_install pyyaml
Обновление: в настоящее время установка выполняется с помощью pip, но libyaml по-прежнему требуется для создания расширения C (на mac):
Для MacOSX (mavericks), похоже, работает следующее:
У меня есть две версии python (3 и 2), а Python 2-это версия по умолчанию, я хочу установить определенный пакет только для Python 3, Я использую windows 7 всякий раз, когда я использую pip install, он устанавливает пакет python 2 Как указать, какая версия python для установки pio
У меня есть Python 2.7 в качестве корня. Мне нужно установить пакет statistics в Python 3.6, а его нет в средах anaconda navigator. Как установить statistics с conda или pip для вторичной среды Python?
Если libyaml не найден или не скомпилирован, PyYAML может обойтись без него на Mavericks.
Есть три пакета с поддержкой YAML. Syck ( pip install syck ), который реализует спецификацию YAML 1.0 с 2002 года; PyYAML ( pip install pyyaml ), которая следует спецификации YAML 1.1 с 2004 года; и ruamel.yaml , которая следует последней спецификации (YAML 1.2 с 2009 года).
Вы можете установить совместимый пакет YAML 1.2 с pip install ruamel.yaml или, если вы используете современную версию Debian/Ubuntu (или производную) с:
$ sudo aptitude install python-yaml
или новее для python3
$ sudo aptitude install python3-yaml
следующая команда загрузит pyyaml , который также включает в себя yaml
«Должен быть один-и, желательно, только один-очевидный способ сделать это».Итак, позвольте мне добавить еще один. Этот больше похож на «install from sources» для Debian/Ubuntu, из https://github.com/yaml/pyyaml
Установите libYAML и его заголовки:
Установите из источников, (не забудьте активировать свой venv):
Для меня это сделала установка версии разработки libyaml.
Вместо этого используйте strictyaml
Если у вас есть роскошь создать файл yaml самостоятельно или если вам не требуется ни одна из этих функций обычного yaml, я рекомендую использовать strictyaml вместо стандартного пакета pyyaml .
Короче говоря, default yaml имеет некоторые серьезные недостатки с точки зрения безопасности, интерфейса и предсказуемости. strictyaml -это подмножество спецификации yaml, которое не имеет этих проблем (и лучше документировано).
OPINION: strictyaml должна быть реализацией по умолчанию yaml, а старая спецификация yaml должна быть устаревшей.
Похожие вопросы:
Я скачал deb-пакет panda3d1.9_1.9.3-xenial_amd64.deb и хочу установить его для Python 3. Мой OS — это Linux Ubuntu 16.04. По умолчанию python — это 2.7.12, и я бы предпочел сохранить его по.
Кто-нибудь знает, как установить пакет MiniSom (или любой другой самоорганизующийся пакет карт) в Python? С уважением.
Я пытаюсь установить модуль YAML (PyYAML3.10) для Python 2.7 на свой mac. Я получаю сообщение об ошибке foll: $ python setup.py install running install running build running build_py running.
Я использую PyCharm 2018.2.4 с Python 3.7. Я хочу запустить некоторые начальные данные, поэтому в консоли управления Python я попытался запустить свой файл yaml, который закончился этой ошибкой.
Я использую Wing IDE, как мне установить пакет hypothesis Python на свой компьютер? Я уже скачал файл zip, использую ли я командную строку для его установки или в Wing IDE есть опция для этого?
У меня есть две версии python (3 и 2), а Python 2-это версия по умолчанию, я хочу установить определенный пакет только для Python 3, Я использую windows 7 всякий раз, когда я использую pip install.
У меня есть Python 2.7 в качестве корня. Мне нужно установить пакет statistics в Python 3.6, а его нет в средах anaconda navigator. Как установить statistics с conda или pip для вторичной среды.
Недавно я удалил некоторые файлы, связанные с python 2.7 , и теперь я сошел с ума. Я хочу использовать pip для установки пакета python для текущего пользователя, а не глобального пользователя. ➜
Мне нужно установить пакет powerlaw в python. если я звоню из приглашения, список python оказывается установленным. Вместо этого, когда я открываю spyder для python, он не распознает пакет. как я.
Как мне установить пакет yaml для Python?
У меня есть программа на Python, которая использует YAML. Я попытался установить его на новом сервере с помощью, pip install yaml и он возвращает следующее:
Как мне установить пакет yaml для Python? Я использую Python 2.7. (ОС: Debian Wheezy)
Вы можете попробовать функцию поиска в пипсах,
который ищет пакеты в PyPI с yaml в кратком описании. Это показывает различные пакеты, включая PyYaml, yamltools и PySyck, среди других (обратите внимание, что документы PySyck рекомендуют использовать PyYaml, так как syck устарел). Теперь вы знаете конкретное имя пакета, вы можете установить его:
Если вы хотите установить Python yaml для всей системы в Linux, вы также можете использовать менеджер пакетов, например aptitude или yum :
pip install pyyaml
Если у вас нет pip, запустите easy_install pip для установки pip, который является установщиком пакетов для перехода — зачем использовать pip вместо easy_install? , Если вы предпочитаете придерживаться easy_install, то easy_install pyyaml
Обновление: в настоящее время установка выполняется с помощью pip, но libyaml все еще требуется для сборки расширения C (на Mac):
Для MacOSX (mavericks), кажется, работает следующее:
Если libyaml не найден или скомпилирован, PyYAML может обойтись без него на Mavericks.
Существует три пакета с поддержкой YAML. Syck ( pip install syck ), которая реализует спецификацию YAML 1.0 2002 года; PyYAML ( pip install pyyaml ), которая следует спецификации YAML 1.1 2004 года; и ruamel.yaml, который следует последней спецификации (YAML 1.2 от 2009 года).
Вы можете установить YAML 1.2 совместимый пакет с pip install ruamel.yaml или, если вы используете современную версию Debian / Ubuntu (или производную) с:
Системы на основе Debian:
$ sudo aptitude install python-yaml
или новее для python3
$ sudo aptitude install python3-yaml
будет загружена следующая команда pyyaml , которая также включает yaml
«Должен быть один — и желательно только один — очевидный способ сделать это». Итак, позвольте мне добавить еще один. Это больше похоже на «установку из исходников» для Debian / Ubuntu, с https://github.com/yaml/pyyaml
Установите libYAML и его заголовки:
Установите из источников (не забудьте активировать ваш venv):
Используйте strictyaml вместо этого
Если у вас есть возможность создать файл yaml самостоятельно или если вам не нужны какие-либо из этих функций обычного yaml, я рекомендую использовать strictyaml вместо стандартного pyyaml пакета.
Короче говоря, в yaml по умолчанию есть серьезные недостатки в плане безопасности, интерфейса и предсказуемости. strictyaml это подмножество спецификации yaml, у которого нет таких проблем (и лучше задокументировано).
МНЕНИЕ: strictyaml должна быть реализация yaml по умолчанию, а старая спецификация yaml должна быть устаревшей.
Installing yaml for Python 3.6 through pip #132
Comments
Amir-Arsalan commented Feb 13, 2018
I just noticed that the pip version of yaml only works with python 3.5. I wonder, can someone update the package list on pypi.python.org so that people can install yaml for python 3.6 as well?
The text was updated successfully, but these errors were encountered:
henryborchers commented Feb 13, 2018
I just ran into the same issue!
mei-li commented Feb 14, 2018
We also run into it as well. Is it only via pip? @Amir-Arsalan Have you manage to install it via the github repofor python3.6?
Amir-Arsalan commented Feb 14, 2018
@mei-li For now I switched back to Python 3.5. Didn’t have time to compile the code and wanted to avoid possible headaches.
mei-li commented Feb 14, 2018
Problem solved. I was missing python3.6-dev package. It got solved with
> sudo apt-get install python3.6-dev
Amir-Arsalan commented Feb 14, 2018
It’s not about installing Python 3.6. `pip install pyyaml’ installs Yaml for up to Python 3.5 only.
ingydotnet commented Feb 15, 2018 •
Can you be more specific on a repro scenario for this?
This is working fine for me:
feluxe commented Feb 16, 2018
pip install pyyaml works for me with Python 3.6 .
wumpus commented Feb 27, 2018
pip install pyyaml works for me in every release of 3.6.
Given that pyyaml compiles stuff during installation, the most likely problem is that @Amir-Arsalan is missing python development libs in his 3.6 install. Same solution as @mei-li
Amir-Arsalan commented Feb 27, 2018
Yes it could be that. I close the issue then.
KevinDCruz commented Jun 8, 2018
Virtual Environment Setting
Keras was not installing because of pyyaml setting not meeting up for python 3.6. I already had Anaconda installed in a different virtualenv with keras working fine (pyyaml module installed). I just used conda install pyyaml instead of pip and it got installed, thereby using pip install keras to install the keras library in my new virtual environment.
if you have anaconda installed already, try using
conda install yaml
and see if it works. It worked for me!
rishikesh67 commented Feb 25, 2019
pip install pyyaml works for me with Python 3.6 .
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
How do I install the yaml package for Python?
I have a Python program that uses YAML. I attempted to install it on a new server using pip install yaml and it returns the following:
How do I install the yaml package for Python? I’m running Python 2.7. (OS: Debian Wheezy)
11 Answers 11
You could try the search feature in pip,
which looks for packages in PyPI with yaml in the short description. That reveals various packages, including PyYaml, yamltools, and PySyck, among others (Note that PySyck docs recommend using PyYaml, since syck is out of date). Now you know a specific package name, you can install it:
If you want to install python yaml system-wide in linux, you can also use a package manager, like aptitude or yum :
pip install pyyaml
If you don’t have pip, run easy_install pip to install pip, which is the go-to package installer — Why use pip over easy_install?. If you prefer to stick with easy_install, then easy_install pyyaml
Update: Nowadays installing is done with pip, but libyaml is still required to build the C extension (on mac):
For MacOSX (mavericks), the following seems to work:
If libyaml is not found or compiled PyYAML can do without it on Mavericks.
There are three YAML capable packages. Syck ( pip install syck ) which implements the YAML 1.0 specification from 2002; PyYAML ( pip install pyyaml ) which follows the YAML 1.1 specification from 2004; and ruamel.yaml which follows the latest (YAML 1.2, from 2009) specification.
You can install the YAML 1.2 compatible package with pip install ruamel.yaml or if you are running a modern version of Debian/Ubuntu (or derivative) with:
$ sudo aptitude install python-yaml
or newer for python3
$ sudo aptitude install python3-yaml
following command will download pyyaml , which also includes yaml
«There should be one — and preferably only one — obvious way to do it.» So let me add another one. This one is more like «install from sources» for Debian/Ubuntu, from https://github.com/yaml/pyyaml
Install the libYAML and it’s headers:
Download the pyyaml sources:
Install from sources, (don’t forget to activate your venv):
Use strictyaml instead
If you have the luxury of creating the yaml file yourself, or if you don’t require any of these features of regular yaml, I recommend using strictyaml instead of the standard pyyaml package.
In short, default yaml has some serious flaws in terms of security, interface, and predictability. strictyaml is a subset of the yaml spec that does not have those issues (and is better documented).
OPINION: strictyaml should be the default implementation of yaml and the old yaml spec should be obsoleted.