#python #pep8
#python #pep8
Вопрос:
Я должен объявить некоторые dict
на Python. Я пишу такой код:
class MegaClass(object):
_activation_grad_classes =
{
activation.ForwardStrictRELU: activation.BackwardStrictRELU,
activation.ForwardLog: activation.BackwardLog,
activation.ForwardSinCos: activation.BackwardSinCos
}
И получите ошибку PEP-8 : E122 continuation line missing indentation or outdented
.
Как я могу это исправить?
Ответ №1:
Поместите открывающую фигурную скобку в строку назначения:
_activation_grad_classes = {
activation.ForwardStrictRELU: activation.BackwardStrictRELU,
activation.ForwardLog: activation.BackwardLog,
activation.ForwardSinCos: activation.BackwardSinCos
}
Редко возникает необходимость в использовании
для экранирования новой строки в Python; вместо этого используйте {..}
, [..]
и (..)
для группировки выражений по нескольким строкам.
Комментарии:
1. Единственный раз, когда я когда-либо использую »
multi_line_text='''
, — это экранирование первой новой строки, и текст в документе here выстраивается так, как он будет определен после определения.2. @dawg: действительно, это единственное место, где я его когда-либо использую, и только потому, что это делает первую строку более аккуратной.