Для записи pweave отлично работает с декораторами.
Это связано с тем, как ruffus определяет, какая функция является какой - функция фактически должна принадлежать файлу модуля, как свойство function.__module__
используется.Я не уверен, что вы можете обмануть его, включив всю информацию, необходимую для создания этих идентификаторов функций.
Вы можете сами увидеть ошибки, если отредактируете скрипт pweb.py
, включенный в pweave, так, чтобы try:...except
: операторы в функции pweave()
более многословны (проще всего просто закомментировать части try
и except
).Ошибки, которые вы получаете, заключаются в самых глубоких недоразумениях.
Я бы посоветовал держаться подальше от сложной библиотеки, такой как ruffus, для дидактических целей, так как ruffus, в частности, использует множество хаков (синтаксический сахар, если хотите).) предоставить простой пользовательский интерфейс.Если вы не можете использовать его для этой цели, вы можете попытаться связаться с автором, который был довольно отзывчив на мои запросы.У него могут быть некоторые идеи, как это сделать.