Для сложного файла lilypond в Python нет простого способа проверить, правильно ли он сформирован. Основная причина в том, что файл lilypond - это не простой файл данных, а фактически набор кодов / макросов Scheme, поэтому любой анализатор Python должен будет встроить весь анализатор Scheme, чтобы проверить наличие макросов. правильного типа и т. д. Это основная причина, по которой в моем проекте (music21) никогда не реализован анализатор lilypond, даже если он выдаст Lilypond. Модуль Фрескобальди может анализировать некоторые Lilypond. Лучший инструментарий на чистом Python для анализа (и генерации) полного Lilypond - Abjad ; его тоже не просто использовать, но он очень мощный.