Подтвердить что ты не робот

Соглашение о кодировании на языке Python "Неверное продолжение отступов перед блоком: найдено pylint

Я использовал pylint для проверки моего кода на Python и нашел эту проблему:

C:11, 0: Wrong continued indentation before block.
                    + this_time <= self.max):
                    ^   | (bad-continuation)

Я пытался уточнить время, но проблема все еще присутствует, может кто-то поможет? Спасибо!

if len(remaining_obj_list) > 0:
    for i in a_list:
        this_time = self.__get_time(i)
        for remaining_obj in remaining_obj_list:
            if (remaining_obj.get_time() # to fit 78 char rule
                + this_time <= self.max):
                i.append(remaining_obj)
                remaining_obj.set_used(True)
        if 0 == len(self.__get_unused_list):
            break
4b9b3361

Ответ 1

Pylint не хочет, чтобы такое продолжение запускалось в том же столбце, что и следующий блок отступа. Также обратите внимание, что сообщение содержит подсказку о столбцах, которые он считает правильными.

Ответ 2

Попробуйте поместить + в предыдущую строку:

        if (remaining_obj.get_time() +
            this_time <= self.max):

В качестве побочной заметки вы можете подумать о факторах, которые вызывают у вашего кода, примерно в пределах 40 символов - возможно, у вас слишком много уровней отступов, и ваш код может быть реорганизован, чтобы иметь меньше вложенных блоков.

Ответ 3

Согласно PEP8: "Предпочтительное место для разрыва вокруг двоичного оператора - после оператора, а не до него".

Попробуйте переместить этот знак плюс в предыдущую строку.

Ответ 4

Проверьте наличие ложных вкладок (в Sublime: Ctrl + F, затем введите один пробел) и замените их на правильное количество пробелов. У меня была та же проблема, и в то время как PyLint жаловался на продолжение строки, ошибка фактически была вызвана неуместными вкладками.

При отступах PyLint, кажется, считает только пробелы и выдает эту ошибку, если числа не складываются в кратные 4. В зависимости от редактора, неулокальные вкладки могут быть не сразу видны.