我是Python的新手,所以请耐心等待。
当我尝试打印时,我有一个名为FUNNEL_STEP_ARRAY
的数组返回值i
。但是,我想在每个循环中返回查询结果for (i)
。
for i in FUNNEL_STEP_ARRAY:
print (i) #prints the step name
y = db.external_funnel.find(
{"step_id":"\i", "client_timestamp": {"$regex": "2013-10-25T"},
"application_id":"6083502215600857441"
}).distinct("user_id")
print(len(y))
当我打印数组中最后一步的名称时,我得到了相应的响应,但是我无法找到让我为上面的每个循环输入查询的适当方法。
y = db.external_funnel.find(
{"step_id":"Tutorial.TAttackScreen.End", "client_timestamp": {"$regex": "2013-10-25T"},
"application_id":"6083502215600857441"
}).distinct("user_id")
打印(y)的 [ '11856662934482915056', '6822304154484365317', '16907601980584545477', '7754468465932591739', '4035769163970893047', '1722852941393395710', '16289507963782337913', '12342123419828328163', '15183373460796791586', '3923264265959269816', '8842662517796204109', '1330883712013359625',“ 6130265032042700646' , '3280282641258166143', '18002035489108466380', '8584675150263264823', '13183853476835939343', '12332104951386419645', '3477173628398869287', '8625222330019018139', '1937123521362305652', '11430291986398375763', '8051074243207166456', '17635653501888308620'] 打印(LEN(Y)) 24
理想情况下,我正在寻找每个(i)的输出,如下所示:
Tutorial.TAttackScreen.End 24
答案 0 :(得分:0)
目前,在for循环中,您正在执行"step_id": "\i"
。这是做什么字面上说你想要步骤id是字符“反斜杠我”。相反,您只需执行以下操作即可使用变量的内容:
for i in FUNNEL_STEP_ARRAY:
y = db.external_funnel.find({
"step_id": i,
"client_timestamp": {"$regex": "2013-10-25T"},
"application_id":"6083502215600857441"
}).distinct("user_id")
print(len(y))
注意:为i
变量使用更明确的名称可能更好。例如:
for step_id in FUNNEL_STEP_ARRAY:
y = db.external_funnel.find({
"step_id": step_id,
"client_timestamp": {"$regex": "2013-10-25T"},
"application_id":"6083502215600857441"
}).distinct("user_id")
print(len(y))