According to the help text, "-Oy" should output "Python syntax". Looking at the actual output, it resembles very much JSON format which can be read by Python (and any other programming language), but is it malformed and is not recognized by JSON parsers.
The output starts with "lsdvd = { ..." and is not allowed in JSON. Valid JSON is enclosed in a pair of curly braces: { ... }
Property names and values of string-type in JSON must be enclosed in double quotes, not single quotes. Example:
"name" : "John"
The last elements in an array [] or dictionary {} must not be followed by a comma, as this suggests there will be another element in the sequence.
These issues makes the output unusable for JSON parsers.
A little suggestion: the output could be renamed from "Python syntax" to "JSON format", as it is independet of the Python language. The command line switch could be "-Oj"
Not quite sure what to say about this report. The output is valid python, setting the lsdvd variable to a dictionary with the values extracted. It is as you state, close to JSON but not JSON. Changing the output to become JSON would break every current user expecting it to be Python. The quotes and extra commas could be safely changed, but replacing lsdvd = { with {"lsdvd": { would not.