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

Как мне назвать мои классы и функции и даже строки?

Я новичок в Python, как вы могли бы сказать. Я прочитал различные документы, но я все еще не могу понять, есть ли "naming best practices" для строковых функций и, конечно же, классы.

Если я хочу назвать класс или функцию как SiteMap, можно ли использовать SiteMap? Должен ли это быть Site_map или любой другой вещи, например?

Спасибо!

PS. любой дополнительный ресурс для чтения НАСТОЛЬКО оценен! PS. Я занимаюсь разработкой веб-приложений (обучение, лучше сказать!)

4b9b3361

Ответ 1

Соглашения об именах:

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

1) Имена модулей должны быть строчными с символами подчеркивания вместо пробелов.   (И должны быть действительными именами модулей для импорта.)

2) Имена переменных и имена функций/методов также должны быть строчными   с подчеркиваниями для разделения слов.

3) Названия классов должны быть CamelCase (прописная буква для начала,   слова выполняются вместе, каждый начинается с буквы верхнего регистра).

4) Константы модуля должны быть заглавными.

например. Обычно у вас module.ClassName.method_name.

5) Имена модулей в CamelCase с именем основного класса, идентичным   имя модуля раздражает. (например, ConfigParser.ConfigParser, который   всегда должно быть написано configobj.ConfigObj.)

6) Кроме того, переменные, функции, методы и классы, которые не являются частью вашего публичного API, должны начинаться с одного подчеркивания. (использование двойных подчеркиваний, чтобы сделать атрибуты частными, почти всегда оказывается ошибкой - особенно для проверки).

Пробелы

И, наконец, вы всегда должны иметь пробелы вокруг операторов и после пунктуации. Исключение составляют аргументы по умолчанию для методов и функций.

например. def function (default = argument): и x = a * b + c

Ответ 2

PEP8 указывает рекомендуемое соглашение об именах для Python. Среди обсуждаемых там правил он упоминает underscore_names для функций и переменных (независимо от их типа) и CamelCase для классов.