2012-01-18 3 views
140

Итак, что лучше и почему?Должен ли я использовать «верблюжьей кейс» или подчеркивания в python?

def my_function(): 

или

def myFunction(): 
+5

FWIW, я думаю, что это покрыто как «не имеет значения» в одном из ВПД. Либо кажется приемлемым из моего опыта (просто * быть последовательным *). В любом случае это довольно субъективно. –

+69

Почему голоса закрываются? Это вполне разумный вопрос о том, что считается обычной практикой в ​​сообществе. – Marcin

+3

существует множество действительных правил кодирования в качестве разработчиков, единственное, что нужно сделать ** сохранить в проекте один и тот же протокол кодирования **. –

ответ

161

для всего, что связано с руководством по стилю Python: я бы рекомендовал вам прочитать PEP8.

Чтобы ответить на ваш вопрос:

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

+47

Вы обрезали важную часть PEP8: «mixedCase разрешен только в тех контекстах, где уже преобладает стиль (например, threading.py), чтобы сохранить обратную совместимость». Иногда CamelCase является приемлемым. –

+7

Это абсолютно противоречит тому, что группа слов с верблюжьей оболочкой представляет собой однозначный сплошной символ, который выглядит как единый объект, соответствующий идее о том, что имя метода - это одно (в отличие от нескольких объектов, слов, которые нужно читать и позже интерпретируется как одна группа из нескольких вещей). Это даже хуже всего, если имя метода содержит в нем зарезервированное слово. –

+2

@SebastianSastre визуальная группировка слов обычно решается с помощью подсветки синтаксиса. – Joost

23

РЕР 8 советует первую форму для удобства чтения. Вы можете найти его here.

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

10

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

Заканчивать его уже был дан ответ, click here

+0

Извините, я пропустил предыдущий ответ с моим поиском, прежде чем отправлять – tdc

+0

@tdc. Вам не нужно сожалеть, всегда приятно спросить. –