LINUX.ORG.RU

История изменений

Исправление PPP328, (текущая версия) :

https://habr.com/ru/post/710414/

Там много примеров. Например:

port_mapping:
  - 22:22
  - 80:80
  - 443:443
{"port_mapping": [1342, "80:80", "443:443"]}

Ой, а что здесь произошло? Оказывается, числа от 0 до 59, разделённые двоеточиями — это шестидесятеричные (по основанию 60) числовые литералы. Эта загадочная фича присутствовала в YAML 1.1, но была незаметно удалена из YAML 1.2, поэтому в зависимости от версии, которую использует парсер, элемент списка спарсится как 1342 или как «22:22». Формату YAML 1.2 уже больше десяти лет, но если вы предположите, что он широко поддерживается, то ошибётесь: последняя версия libyaml на момент написания (которая, среди прочего, используется и в PyYAML) реализует YAML 1.1 и парсит 22:22 как 1342.

Исходная версия PPP328, :