调用yield后如何返回我的字符串

时间:2017-08-09 03:05:34

标签: return yield

我写了一个labrad服务器。有用。但是我遇到了一个问题。 首先,它是我的代码:

from labrad.server import LabradServer, setting
import numpy as np

SERVERNAME = 'tian'

class Tian_Server(LabradServer):

    name = SERVERNAME

    def initServer(self):
        self.dac = self.client.servers['laserdac_server']

    def set_supervisor_current(self,first_current):
        self.dac.set_individual_analog_voltages([('05', first_current)])
        print 'supervisor is set to:',first_current

    # scan current
    @setting(1)
    def scan_supervisor_2Ddata(self,c):

       "some code"

        for v in scan1:
            yield self.dac.set_individual_analog_voltages([('05', v)])
            "take my data"
            print "scan supervisor: ", v

        "some code"
        return <my data as a 2D-string>


if __name__ == "__main__":
    from labrad import util
    server = Tian_Server()
    util.runServer( server )

我需要使用yield,否则我无法同时设置电流。 但是现在,我无法返回应该在其他方法中使用的数据。 有谁知道吗? 非常感谢!

0 个答案:

没有答案