Вот мой код ниже:цикл работает только один раз в питона
import pymongo
import sys
client=pymongo.MongoClient('localhost',27017)
db=client.test
try:
cursor= db.alb.find()
cursor1=db.img.find()
cntr=db.alb.count()
print "looping starts..."
for im in cursor1:
id1=im['_id']
cnt=0
print id1
for image in cursor:
ig=image['images']
print "image value:" , ig
print "id value:" , id1
if (id1 == ig):
break;
else:
cnt=cnt+1
print "count value", cnt
if (cnt == cntr):
print "removing..."
db.img.remove({'_id':id1})
print id1
print cnt
except Exception as e:
print "unexpected error", type(e),e
я следующие данные в ALB коллекции:
id:0 images:366
id:1 images:367
id:2 images:368
id:3 images:369
id:4 images:370
id:5 images:380
id:6 images:371
id:7 images:372
У меня есть ниже в коллекции IMG:
id:365
id:345
id:372
id:370
id:371
id:380
id:381
в основном из вышеуказанного кода id:365
, id:345
, id:381
должно быть повторно перемещен из коллекции img, но мой код удаляет только id:365
в коллекции img.
Пожалуйста, помогите мне в исправлении ошибок в этом коде .....
Что такое длина 'cursor1'?'len (cursor1)' и писать операторы отладки, такие как 'print 'Debug 1 id1", id1' –
try 'db = client [" test "]' – The6thSense
Я пробовал с len (cursor1), я получаю ошибку, как объект типа курсора имеет no length(). Также как мы можем найти длину курсора ... он сохраняет все документы правильно ....? – Svati