Пробелы в выражениях и инструкциях
Избегайте использования пробелов в следующих ситуациях: · Непосредственно внутри круглых, квадратных или фигурных скобок. Правильно: spam(ham[1], {eggs: 2})Неправильно: spam( ham[ 1 ], { eggs: 2 } )· Непосредственно перед запятой, точки с запятой или двоеточием: Правильно: if x == 4: print(x, y); x, y = y, xНеправильно: if x == 4 : print(x , y) ; x , y = y , x· Сразу перед открывающей скобкой, после которой начинается список аргументов при вызове функции: Правильно: spam(1)Неправильно: spam (1)· Сразу перед открывающей скобкой, после которой следует индекс или срез: Правильно: dict['key'] = list[index]Неправильно: dict ['key'] = list [index]· Использование более одного пробела вокруг оператора присваивания (или любого другого) для того, чтобы выровнять его с другим: Правильно: x = 1y = 2long_variable = 3Неправильно: x = 1y = 2long_variable = 3Другие рекомендации · Всегда окружайте эти бинарные операторы одним пробелом с каждой стороны: присваивания (=, +=, -= и другие), сравнения (==, <, >, !=, <>, <=, >=, in, not in, is, is not), логические (and, or, not). · Если используются операторы с разными приоритетами, попробуйте добавить пробелы вокруг операторов с самым низким приоритетом. Используйте свои собственные суждения, однако, никогда не используйте более одного пробела, и всегда используйте одинаковое количество пробелов по обе стороны бинарного оператора. Правильно: i = i + 1submitted += 1x = x*2 - 1hypot2 = x*x + y*yc = (a+b) * (a-b)Неправильно: i=i+1submitted +=1x = x * 2 - 1hypot2 = x * x + y * yc = (a + b) * (a - b)· Не используйте пробелы вокруг знака =, если он используется для обозначения именованного аргумента или значения параметров по умолчанию. Правильно: def complex(real, imag=0.0): return magic(r=real, i=imag)Неправильно: def complex(real, imag = 0.0): return magic(r = real, i = imag)· Не используйте составные инструкции (несколько команд в одной строке). Правильно: if foo == 'blah': do_blah_thing()do_one()do_two()do_three()Неправильно: if foo == 'blah': do_blah_thing()do_one(); do_two(); do_three()· Иногда можно писать тело циклов while, for или ветку if в той же строке, если команда короткая, но если команд несколько, никогда так не пишите. А также избегайте длинных строк! Точно неправильно: if foo == 'blah': do_blah_thing()for x in lst: total += xwhile t < 10: t = delay()Вероятно, неправильно: if foo == 'blah': do_blah_thing()else: do_non_blah_thing() try: something()finally: cleanup() do_one(); do_two(); do_three(long, argument, list, like, this) if foo == 'blah': one(); two(); three()Комментарии Комментарии, противоречащие коду, хуже, чем отсутствие комментариев. Всегда исправляйте комментарии, если меняете код! Комментарии должны являться законченными предложениями. Если комментарий — фраза или предложение, первое слово должно быть написано с большой буквы, если только это не имя переменной, которая начинается с маленькой буквы (никогда не изменяйте регистр переменной!). Если комментарий короткий, можно опустить точку в конце предложения. Блок комментариев обычно состоит из одного или более абзацев, составленных из полноценных предложений, поэтому каждое предложение должно оканчиваться точкой. Ставьте два пробела после точки в конце предложения. Программисты, которые не говорят на английском языке, пожалуйста, пишите комментарии на английском, если только вы не уверены на 120%, что ваш код никогда не будут читать люди, не знающие вашего родного языка. Блоки комментариев Блок комментариев обычно объясняет код (весь, или только некоторую часть), идущий после блока, и должен иметь тот же отступ, что и сам код. Каждая строчка такого блока должна начинаться с символа # и одного пробела после него (если только сам текст комментария не имеет отступа). Абзацы внутри блока комментариев разделяются строкой, состоящей из одного символа #. "Встрочные" комментарии Старайтесь реже использовать подобные комментарии. Такой комментарий находится в той же строке, что и инструкция. "Встрочные" комментарии должны отделяться по крайней мере двумя пробелами от инструкции. Они должны начинаться с символа # и одного пробела. Комментарии в строке с кодом не нужны и только отвлекают от чтения, если они объясняют очевидное. Не пишите вот так: x = x + 1 # Increment xВпрочем, такие комментарии иногда полезны: x = x + 1 # Компенсация границыСтроки документации · Пишите документацию для всех публичных модулей, функций, классов, методов. Строки документации необязательны для приватных методов, но лучше написать, что делает метод. Комментарий нужно писать после строки с def. · PEP 257 объясняет, как правильно и хорошо документировать. Заметьте, очень важно, чтобы закрывающие кавычки стояли на отдельной строке. А еще лучше, если перед ними будет ещё и пустая строка, например: · """Return a foobang· · Optional plotz says to frobnicate the bizbaz first.· · """· Для однострочной документации можно оставить закрывающие кавычки на той же строке. Контроль версий Если вам нужно использовать Subversion, CVS или RCS в ваших исходных кодах, делайте вот так: __version__ = "$Revision: 1a40d4eaa00b $"# $Source$ Вставляйте эти строки после документации модуля перед любым другим кодом и отделяйте их пустыми строками по одной до и после.
Популярное: Почему стероиды повышают давление?: Основных причин три... Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация... Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (558)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |