为什么下面的函数只在a只发送一组数据时运行。我认为for each必须表示数据集中的每个值。在
data_checkpoint_size = cclient.samples.list(meter_name ='checkpoint.size')
data_checkpoint_length = cclient.samples.list(meter_name ='checkpoint.length')
data_checkpoint_pause = cclient.samples.list(meter_name ='checkpoint.pause')
def counterVolume(data_checkpoint_size, data_checkpoint_length, data_checkpoint_pause):
for each in data_checkpoint_size:
d = each.counter_volume
for each in data_checkpoint_length:
e = each.counter_volume
for each in data_checkpoint_pause:
f = each.counter_volume
pubnub.publish(channel='channel', message= {'checkpoint_size': d, 'checkpoint_length': e, 'checkpoint_pause': f})
counterVolume(data_checkpoint_size, data_checkpoint_length, data_checkpoint_pause)
我只得到以下结果,而不是一系列的数据。检查点长度、检查点长度和检查点暂停是三种不同的米,它们是三种不同的数据流
^{pr2}$
每次调用
each.counter_volume
时都重写d、e和f。如果您希望最终获得大量返回数据的集合,则需要如下所示:值得注意的是,这假设所有数据集的长度都相等。为了得到更深入的答案,你需要提供一个更深入的问题,关于你想要达到什么目的。在
就像@ismailsunni说的,你的变量被重新分配了。这就假定所有数据的长度相同,但它应该有效:
我会先进行测试,以确保它们的长度都相同,然后引发一个特定的异常(这样更容易调试):
^{pr2}$相关问题 更多 >
编程相关推荐