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

Форматирование списка аргументов функции Python

Каков наилучший способ форматирования следующего фрагмента кода в соответствии с 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)

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

4b9b3361

Ответ 1

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