2015-09-15 3 views
5

Можно ли обернуть имя метода в определении функции? У меня есть исключительно длинное имя метода, и мне интересно, если это возможно, чтобы обернуть его следующим образом:Имя метода упаковки в определении

# method name is my_really_long_method_name_wow_this_is_really_long 
def my_really_long_method_name_ 
     wow_this_is_really_long(): 
    pass 

Я попытался сделать это, но я получаю ошибку синтаксиса:

def my_really_long_method_name_\ 
     wow_this_is_really_long(): 
    pass 

ответ

3

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

Btw, Python рекомендует длину линии (всего) из 79 символов. Мы больше не в 80-х годах со старыми экранами, поэтому вы можете игнорировать этот предел, но это дает вам хорошее представление.

Ссылка: PEP 0008 -- Style Guide for Python Code

+0

Я следую руководству Роя Osherove в именовании методов модульного тестирования, но я хотел бы также мои тесты, чтобы быть PEP0008 совместимыми (завернуть до 79 символов). Думаю, мне придется разработать способ переименования моих тестов, чтобы они составляли менее 80 символов. –

+1

Одним из возможных способов решения этой проблемы является создание классов для структурирования вашего кода и разделения его на части. «Абстракция» - это ключевое слово здесь. 'test1.ExecuteMain()' легче читать, чем 'ThisIsTest1AndThisExecutesMainTest' – HelloWorld

Смежные вопросы