The formatted data in file is similar to YAML and would like to create a grammer and parser for it. What is the easies way to do this in Python? Is there a tool that let you define a grammer for your data and parses according to the grammer?
P.S. I know the easier way to do this might be to change the data formate into JSON or other type but right now it can't be changed
Look into pyparsing. It's a pretty simple library, but it is also quite powerful.
Maybe you'd find funcparselib worthy. It has easy syntax both for tokenization and syntax definitions.
PyParsing is probably slower, but powerful and well-known.