На этот вопрос уже есть ответ здесь:
При использовании длинных отступов условий if вы обычно делают что-то вроде этого (на самом деле, PyDev делает такие отступы):
if (collResv.repeatability is None or
collResv.somethingElse):
collResv.rejected = True
collResv.rejectCompletely()
Однако это помещает блок, запускаемый оператором if, на тот же уровень отступа, что и последняя часть условия if, что делает его очень уродливым / трудным для чтения на мой взгляд, поскольку вы не сразу видите, где начинается блок.
Некоторые другие стили, о которых я подумал:
if (collResv.repeatability is None or
collResv.somethingElse):
collResv.rejected = True
collResv.rejectCompletely()
Это выглядит довольно непоследовательно, поскольку вторая строка имеет гораздо больший отступ, чем первая строка, но ее можно читать.
if (collResv.repeatability is None or
collResv.somethingElse):
collResv.rejected = True
collResv.rejectCompletely()
] Это также более читабельно, чем в первом примере,но отступ больше не кратен 4, и, кроме того, это выглядит неправильно, поскольку вторая строка имеет меньший отступ, чем начало условия в первой строке.
Итак, мой главный вопрос: существует ли предлагаемый стиль отступа для случаев, подобных тому, которые не требуют слишком длинных строк (т. е. однострочное условие)? Если нет, то что вы предпочитаете для подобных случаев?