Стандарты / лучшие практики кодирования Python [закрыто]

В Python вы обычно используете PEP 8 - Руководство по стилю для кода Python в качестве стандартов / руководств по кодированию? Есть ли какие-либо другие формализованные стандарты, которые вы предпочитаете?

10.12.2008 14:10:07
// Попроска «предпочтений аудитории» поначалу может показаться безобидной, но она превращает переполнение стека в механизм опроса, своего рода извращенную демократию немногих против многих. "Есть ли другие __________, которые вы предпочитаете?" буквально спрашивает у них предпочтение, а не факт.
Nathan Basanese 11.06.2015 08:42:10
8 ОТВЕТОВ
РЕШЕНИЕ

«В python вы обычно используете PEP 8 - Руководство по стилю для кода Python в качестве стандартов / руководств по кодированию? Есть ли какие-либо другие формализованные стандарты, которые вы предпочитаете?»

Как упоминалось вами, следуйте PEP 8 для основного текста и PEP 257 для соглашений о документах

Наряду с Руководствами по стилю Python, я предлагаю вам сослаться на следующее:

  1. Код как Pythonista: идиоматический Python
  2. Распространенные ошибки и бородавки
  3. Как не писать код Python
  4. Python получил
149
31.05.2011 05:28:00

Да, я стараюсь следовать этому как можно ближе.

Я не следую никаким другим стандартам кодирования.

2
10.12.2008 14:11:27

Я очень строго следую этому. Единственный бог до PEP-8 - это существующие кодовые базы.

4
10.12.2008 14:16:04
и я хотел бы отметить, что PEP-8 даже принимает во внимание существующие кодовые базы.
John Mulder 13.12.2008 04:09:27

Я следую рекомендациям Python по идиомам и эффективности , написанным Робом Найтом. Я думаю, что они точно такие же, как PEP 8, но более синтетические и основаны на примерах.

Если вы используете wxPython, вы также можете проверить руководство по стилю для кода wxPython , также Криса Баркера.

14
24.08.2012 22:39:18

PEP 8 - это хорошо, единственное, на что мне хотелось бы, чтобы это было сложнее, - это священная война Tabs-vs-Spaces.

В основном, если вы запускаете проект на python, вам нужно выбрать вкладки или пробелы, а затем расстрелять всех нарушителей на месте.

5
10.12.2008 14:45:36
Вкладки или пробелы? Из PEP8: пробелы являются предпочтительным методом отступа. Вкладки должны использоваться исключительно для соответствия с кодом, который уже имеет отступ для вкладок.
The Demz 8.04.2014 16:41:22
// PEP8 довольно ясно, что пробелы являются предпочтительным методом отступа, Райан. Downvoted. Хотелось бы обновить ответ?
Nathan Basanese 11.06.2015 05:12:40

Чтобы добавить Бхадры список идиоматических гидов:

Оформить презентацию Энтони Бакстера по эффективному программированию на Python (из OSON 2005).

Выдержка:

# dict's setdefault method turns this:
if key in dictobj:
    dictobj[key].append(val)
else:
    dictobj[key] = [val]
# into this:
dictobj.setdefault(key,[]).append(val)
5
23.05.2017 11:47:15

Я очень близко придерживаюсь PEP-8.

Есть три конкретные вещи, которые я не могу потрудиться изменить на PEP-8.

  • Избегайте посторонних пробелов непосредственно в скобках, скобках или скобках.

    Похожие: spam(ham[1], {eggs: 2})

    Я делаю это в любом случае: spam( ham[ 1 ], { eggs: 2 } )

    Почему? Более 30 лет укоренившейся привычки - это прижаться () к именам функций или (в C) ключевым словам операторов. Начиная с Фортрана IV в 70-х годах.

  • Используйте пробелы вокруг арифметических операторов:

    Похожие: x = x * 2 - 1

    Я делаю это в любом случае: x= x * 2 - 1

    Почему? Наука программирования Гриса предложила это как способ подчеркнуть связь между присваиванием и переменной, состояние которой изменяется.

    Это не работает хорошо для многократного назначения или расширенного назначения, для этого я использую много пробелов.

  • Для имен функций, имен методов и имен переменных экземпляра

    Рекомендуется: строчные буквы, слова должны быть разделены подчеркиванием, что необходимо для улучшения читабельности.

    Я делаю это в любом случае: camelCase

    Почему? 20+ лет укоренившейся привычки CamelCase, начиная с Паскаля в 80-х годах.

8
26.03.2009 01:48:44
Это отличный контент! codingstyleguide.com или codereview.stackexchange.com было бы хорошим местом, чтобы иметь эти замечательные рекомендации.
Pompeyo 12.03.2014 08:46:17

Я следую PEP8, это отличный образец стиля кодирования.

1
14.08.2011 11:55:14