>我有一个列表
共fb_param_list = ['Fb01', 'Fb02',..., 'Fb76', 'Fb77']
62 片
我想在我的函数中使用参数
def get_data(timeFrame,period,*args):
for chute in args:
try:
ret = get (Period=period,
DataSet=dataSet,
ServiceName=serviceName,
Metric=chute,
MethodName=methodName,
Marketplace=marketPlace,
StartTime=timeFrame,
Stat=stat)
metric = ret[u'Datapoint']
#print metric
diverts = (sum([float(elem[u'Val']) for elem in metric]))
print ('Diverts in the last ' + timeFrame + ' is: ' + str(diverts) + ' for ' + chute)
except:
diverts = "error you f'd up"
finally:
print diverts
然后我像这样调用函数
get_data('Fa60','-PT5M',*fb_param_list)
我最终得到的只是 62 行error you f'd up
所以我的循环正在工作,但我认为我没有将参数传递给Metric
我做错了什么?值得注意的是,get
函数中的其他参数是在其他地方声明的常量,但我知道这些工作。 我还通过调用单个变量而不是使用列表来测试此函数。
有一次我使用 Jon Clements 帮助打印了我的异常
except Exception e:
print (e)
我看到了我的错误
"周期值不正确:-PT5M">
我没有通过调用来改变我调用它现在工作的函数的方式
get_data('-PT5M','OneMinute',*fa_chute_list)
而不是get_data('Fa60','-PT5M',*fb_param_list)