Хотя символы табуляции допустимы в YAML, их нельзя использовать для отступов, ни в текущей версии ( 1.2 , ни в более старых 1.1 или 1.0 )
Это означает, что не означает, что вкладка не может появиться в начале строки, как показано в следующем примере
import sys
import ruamel.yaml
yaml_str = """\
'xxx
\tyyy'
"""
yaml = ruamel.yaml.YAML()
yaml.explicit_start = True
data = yaml.load(yaml_str)
print(data)
, который работает без ошибок и дает:
xxx yyy
если вы удалите одинарные кавычки из yaml_str
, вы получите полученную ошибку (в строке 2, столбец 1), потому что парсер должен учитывать, запускает ли yyy новыйтокен (при сканировании скаляра с одинарными кавычками он этого не делает).
Не видя фактического YAML, сложно сказать однозначно, но, вероятно, виноват ваш инструмент.Вы могли бы сойти с заменой вкладок:
with open('yourfile.yaml') as fp:
data = yaml.load(fp.read().replace('\t', ' '))