Nipype 自定义界面不显示输出

问题描述

我正在尝试构建一个自定义界面,该界面将根据字典输入动态生成 outputspec 属性。但是,当我执行 .help()

时没有显示输出

这是我之前的内容,如果我运行 help(),它将显示节点的输入和输出

class _GatherInputsOutputSpec(TraitedSpec):

    a_file = traits.str()
    b_file = traits.str()
    c_file = traits.str()


class GatherInputs(SimpleInterface):

    def __init__(self,dict_a):
        super().__init__()
        self.dict_a = dict_a
        self.outputspec = _GatherInputsOutputSpec

   

但是当我尝试像下面那样动态构建 outputspec 类时,当我执行 help() 并且 run() 函数无法正常工作时,输出不会显示

class Context(SimpleInterface):

    def __init__(self,dict_a):
        super().__init__()
        self.dict_a = dict_a
        self.outputspec = self._outputspec_build(dict_a)

    @staticmethod
    def _outputspec_build(dict_a):
        outputspec_class = type("ConfigOutputSpec",(nipype.interfaces.base.specs.TraitedSpec,),{'__module__': '__main__'})
        for k in dict_a.get('inputs').keys():
            setattr(outputspec_class,k,traits.str())
            
        return outputspec_class

我是否错误地设置了属性

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)