3
我正在创建与pyvisa一起使用的仪器类。而不是手动转换每个SCPI命令(约400)进入方法,我想只是命令快速参考复制到一个文本文件,并有一个像这样的命令:如何动态添加本地变量到动态创建的Python类方法
[SENSe:]TEMPerature:TRANsducer:RTD:RESistance[:REFerence]? [{MIN|MAX}]
风起来像这样的方法:
def temp_tran_rtd_res_qry(*args):
<check for valid arguments>
cmd = 'TEMPerature:TRANsducer:RTD:RESistance?'
argstr = ''
for arg in args:
argstr += ' ' + arg
return self.query(cmd + argstr)
我有一个解析命令的句柄,我想出了如何使用setattr()
从模板函数创建具有正确名称的方法。
给我麻烦的部分是每个方法都知道要分配给cmd
的地方。我想我可能会将原始字符串作为属性添加到类中(类似于方法),并在方法中动态解析它们,但为此,可以根据名称(或某些东西)检索类属性)。
可能的重复[如何动态创建类的方法在python](http://stackoverflow.com/questions/17929543/how-can-i-dynamically-create-class-methods-for-a -class-in-python) – JacaByte
这就是我发现的答案,就像我一样。我的问题比创建方法还要多一点。也许我的问题不够具体。 – Jim