Как отформатировать вывод с символами новой строки, используя модуль astPython

Программы на Python
Ответить
Anonymous
 Как отформатировать вывод с символами новой строки, используя модуль ast

Сообщение Anonymous »

Я пытаюсь сгенерировать код с помощью модуля AST. Вот как выглядит мой код:
Я хотел бы добавить новую строку после каждого ключа с правильным форматированием, чтобы вывод выглядел отформатированным.
my_awesome_properties = [
(ast.Constant(value="key1"), ast.Constant(value="value1")),
(ast.Constant(value="key2"), ast.Constant(value="value2")),
(ast.Constant(value="key3"), ast.Constant(value="value3")),
]

my_awesome_properties_dict = ast.Dict(
keys=[key for key, value in my_awesome_properties],
values=[value for key, value in my_awesome_properties]
)

my_awesome_properties_assignment = ast.Assign(
targets=[ast.Name(id='my_awesome_properties', ctx=ast.Store())],
value=my_awesome_properties_dict
)

my_awesome_properties_assignment.lineno = 1

my_awesome_module_node = ast.Module(
body=[
my_awesome_properties_assignment,
],
type_ignores=[]
)

print(ast.unparse(my_awesome_module_node))

Это генерирует выходные данные как
my_awesome_properties = {'key1': 'value1', 'key2': 'value2', 'key3': 'value3'}
Как добавить новую строку после каждого ключа с правильным форматированием, чтобы результат выглядел так: с двойными кавычками?
my_awesome_properties = {
"key1": "value1",
"key2": "value2",
"key3": "value3"
}


Подробнее здесь: https://stackoverflow.com/questions/792 ... ast-module
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»