Я не понимаю, почему textwrap.dedent не работает, если переменная details
содержит \n
или символы новой строки, но работает, если их нет. Есть ли обходной путь, чтобы сделать эту работу?
from textwrap import dedent
log_msg = {
'log_id': 'testid',
'log_level': 'CRITICAL',
'message': 'Complete export to no_cat_products.csv',
'details': 'asdasdasdasdasdasd\n[asdasdasdasdasd\nasdasdasd\n',
'source_application': 'testing.py',
'timestamp': 123445657
}
message = dedent(f"""
ID: {log_msg['log_id']}
Log Level: {log_msg['log_level']}
Message: {log_msg['message']}
Details:
{dedent(log_msg['details'])}
Source Application: {log_msg['source_application']}
Created: {log_msg['timestamp']}
""")
print(message)
Вывод
ID: testid
Log Level: CRITICAL
Message: Complete export to no_cat_products.csv
Details:
asdasdasdasdasdasd
[asdasdasdasdasd
asdasdasd
Source Application: testing.py
Created: 123445657