pycodestyle "продолжение строки не выровнено" не совсем корректно - ошибка, конфигурируемая или ошибка пользователя?

Это минимальный пример, основанный на моем коде:

def fn(self):
    Foo() \
        .with_bar(
            Bar()
                .with_baz('Baz')
        )

Я нахожу это вполне читабельным, но pycodestyle жалуется:

стандартный ввод:5:17: строка продолжения E131 выровнена для отступа

Почти в каждом случае pycodestyle сообщает о проблемах, которые после исправления улучшают читабельность кода. Однако на этот раз следующий код кажется единственным приемлемым решением:

def fn(self):
    Foo() \
        .with_bar(
            Bar()
            .with_baz('Baz')
        )

Это кажется гораздо менее читабельным: отступ не соответствует отступу продолжения по умолчанию, используемому для Fooи это делает .with_baz('Baz') выглядеть как параметр для with_bar, Это то, что я должен просто привыкнуть, это ошибка в pycodestyleили есть альтернативное форматирование, которое сохраняет общий стиль разбивки последующих with_* звонки, которые совместимы с PEP 8?

(Пожалуйста, представьте, что есть еще with методы на обоих Foo а также Bar - все это шаблон компоновки, который должен быть разбит на несколько строк, чтобы быть совместимым с PEP 8 и приятным для чтения. Я не могу просто присоединиться к линии, чтобы решить проблему. Вытаскивая Bar как переменная, конечно, вариант, но это не относится к делу.)

0 ответов

Другие вопросы по тегам