При использовании функционального программирования в Python, я обнаруживаю, что объявляю функции с присваиванием, например,
where = compose(pluck(0), filter(get(1)), enumerate)
вместо использования def
, например,
def where(seq):
"""Return the indices of truthy values in a sequence."""
return pluck(0, filter(get(1), enumerate(seq))
Первый метод изящен и лаконичен, но в нем нет строки документации, что недопустимо. Второй метод допускает использование строки документа, но он менее элегантен и менее функциональный.
Как лучше всего документировать функции, созданные при назначении в Python?