Я хотел бы знать рекомендации о неявном объединении линий в сравнении с явным объединением линий в Python.
В частности, вы предпочитаете одну форму другой? Что вы рекомендуете в качестве общего дефолта? Какие критерии у вас есть для выбора одного над другим, и если у вас есть предпочтение одного, когда вы делаете исключения для другого?
Я имею в виду ответ на этот вопрос, который отражает мои собственные предубеждения, но прежде чем опубликовать свой собственный ответ, я хотел бы знать, что думают другие ... и если у вас может быть лучший набор критериев, чем я имею в виду, тогда я непременно приму ваш ответ за свой.
Некоторые рекомендации могут быть обобщены на этот выбор в других языках программирования, но мой собственный уклон несколько сильнее в Python из-за некоторых языковых особенностей, поэтому я хотел бы знать как общие, так и Python-ориентированные рассуждения, которые вы можете есть на эту тему.
Для некоторой предыстории обсуждение происходило вокруг определенного вопроса о стекопереработке , но я подумал, что было бы более уместно перенести обсуждение сюда как вопрос, чтобы не загромождать ответ по SO этим касательным, поскольку он отклонился от темы оригинальный вопрос. Вы можете посмотреть на этот вопрос и его ответы для примера фрагментов кода, которые привели к обсуждению.
Вот упрощенный пример:
join_type = "explicit"
a = "%s line joining" \
% (join_type)
# versus
join_type = "implicit"
b = ("%s line joining"
% (join_type))
Ответы:
Существует документ в стиле кодирования под названием PEP8. Рекомендуется не использовать
\<NL>
везде, где можно использовать скобки.Полный текст: http://www.python.org/dev/peps/pep-0008/ (раздел Code Layout)
Это не обязательно, но определяет приемлемые хорошие практики, которые особенно полезны, если в вашей команде есть несколько коммиттеров Python.
источник
Я склонен использовать неявное соединение строк, потому что считаю его более читабельным, а поддержка редакторов обычно лучше в отношении отступов и выделения всего выражения благодаря сопоставлению скобок.
источник
В настоящее время я бы предпочел
B-))
,
Я склонен предпочесть соединение явных линий, потому что мне не нравится беспорядок в конце выражений.
Но мне нравится Implicit Lines Joining, чтобы уменьшить ширину, занимаемую записью строки.
Тогда в некоторых случаях мне стыдно не смешивать два способа
источник