Ответ на комментарий от Andrew Lobanov
> Особенно что касается стиля, так как хороший стиль чужими патчами не выработаешь =)Ок, по стилю :)
Общие рекомендации:
* Код должен быть по PEP8.
* Хорошо бы иметь краткий докстринг в каждой функции -- это полезно, для того, чтобы
сразу понимать, что эта функция делает, для показа доков в Емаксе и для автогенерации
документации на код в том же Sphynx. У меня, например, настроена CI так, что ПР, где
нет докстрингов, не принимаются.
* Никогда не импортировать * из модулей.
* Не переопределять имена функций в переменные. Что я имею в виду:
В файле points.py(а возможно и в других, не копал еще сильно) есть функция `hsh()',
которая генерирует authstring. Так вот в нескольких других местах ты создаешь строковые
переменные с таким же именем. Это может привести к неочевидным последствиям.
Пример:
def h(x): return x * x def some_method(func): val = get_val_from_rest_api() return func(val) if __name__ == "__main__": h = "Template: {}" # Тут дальше идет какая-то логика # А под конец хотим вызвать какой-либо метод передав в него some_method(h # Получаем исключение, т.к. вместо функции мы передали строку* Использование python-black по желанию -- это бескомпромиссный форматировщик кода.
Работает четко и круто.
Как облегчить себе жизнь и ваще не париться по поводу стиля:
Ставишь из своих репов autopep8, flake8, python-black, pip.
Настраиваешь Емакс: https://paste.lessmore.pw/hojecuqece.lisp
Теперь всю работу по форматированию кода, а так же комплиту, прыжкам в методы, и.т.д будет делать
за тебя GNU Emacs :)
+++ At work. idec.el/0.1
Difrex (2019-07-18 07:28:39)
[Ответить]