> Особенно что касается стиля, так как хороший стиль чужими патчами не выработаешь =)
Ок, по стилю :)
Общие рекомендации:
* Код должен быть по 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 :)