When there is a multiline template, you can make it look natural within
json_doc = '''{}''' % some_dictionary
and then populate json_doc via %(some_dictionary_key)s values inside of the brackets.
I find it more readable.
Furthermore, json_doc can now live elsewhere, if sizeable, and get imported.
I guess that template strings may be the newer way to do this, but this is very backward compatible.