Форматирование списка аргументов функции Python - PullRequest
40 голосов
/ 07 июля 2011

Каков наилучший способ отформатировать следующий фрагмент кода в соответствии с PEP8:

oauth_request = oauth.OAuthRequest.from_consumer_and_token(consumer,
    token=token, verifier=verifier, http_url=ACCESS_TOKEN_URL)

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

oauth_request = oauth.OAuthRequest.from_consumer_and_token(
    consumer,
    token=token,
    verifier=verifier,
    http_url=ACCESS_TOKEN_URL)

Лучший вариант, который я придумаю, - это добавить дополнительный отступ для лучшего различения:

oauth_request = oauth.OAuthRequest.from_consumer_and_token(
                        consumer,
                        token=token,
                        verifier=verifier,
                        http_url=ACCESS_TOKEN_URL)

Я пытаюсь выработать общее правило для меня, чтобы использовать его для методов с длинным вызовом в первой строке и несколькими параметрами, которые не могут поместиться в одну строку.

1 Ответ

29 голосов
/ 07 июля 2011

Мое чтение документации предполагает, что 2 и 3 являются приемлемыми, но похоже, что 2 предпочтительнее (я говорю это, потому что похоже, что 2 против 3 обрабатывается таким образом в примерах Я не думаю, что спецификация стиля здесь очень специфична). 1 отсутствует (посмотрите на документы под строкой Arguments on first line forbidden when not using vertical alignment)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...