Ruff p-print (T203)

pprint в Ruff проверяет использование операторов pprint.

Почему это неправильно

Как и print, pprint полезен в некоторых ситуациях (например, при отладке), но его обычно следует избегать в продакшен-коде. Использование pprint может привести к случайному включению конфиденциальной информации в логи, а также не предоставляет гибкости настройки, в отличие от logging.

Вместо этого используйте logging, чтобы обеспечить контролируемый вывод сообщений и гибкость настройки.

Пример ошибки

import pprint

def merge_dicts(dict_a, dict_b):
    dict_c = {**dict_a, **dict_b}
    pprint.pprint(dict_c)
    return dict_c

Как правильно

import logging

logger = logging.getLogger(__name__)

def merge_dicts(dict_a, dict_b):
    dict_c = {**dict_a, **dict_b}
    logger.info(dict_c)
    return dict_c