На этот вопрос уже есть ответ здесь:
Из чтения PEP-8 я понял, что вы должны помещать закрывающую скобку в ту же строку, что и последний аргумент в вызовах функций:
ShortName.objects.distinct().filter(
product__photo__stockitem__isnull=False)
Вероятно, длинных выражений лучше вообще избегать.Но если это нежелательно, как бы вы поступили с вызовами нескольких связанных методов? Должен ли закрывающий знак быть на новой строке?
ShortName.objects.distinct().filter(
product__photo__stockitem__isnull=False
).values_list('value', flat=True)
А как насчет методов без аргументов? Как записать их в несколько строк без ссылки на промежуточные возвращаемые значения?
ShortName.objects.distinct(
).filter().values() # looks ugly
Обновление : есть повторяющийся вопрос Как разорвать строку связанных методов в Python? . В принятом ответе предлагается знакомый по jQuery стиль, когда каждая новая строка начинается с точки. Автор не приводит никаких причин или авторитетных ссылок, поэтому я хотел бы получить подтверждение такого стиля или альтернативы.