我是Python新手,但我已经学习了语法。以下是我的设想:
我有两个游标实例AllImages
&;AllAlbums
(我从数据库中获取数据,如下所示:
AllImages = Images.find()
AllAlbums = Albums.find()
()
[编辑:我正在使用PyMongo API]
在AllAlbums
的每个字典中,我都有一个名为images = [1234,2234,16363]
的数字数组
在All Images
的每个字典中,我都有一个名为_id
的字段
下面是两个dict的样子:
从AllAlbums
:
{ _id:23
images:[1123,6643,4,9087]
}
从AllImages
:
{ _id:6643}
现在,我需要看看这个_id
是否存在于images
这是我到目前为止写的:
for img in AllImages:
for alAl in AllAlbums:
alIm = alAl['images']
for qq in alIm:
if qq==img['_id']:
print 'Here!',img['_id'],' with',alAl['_id']
下面是我得到的输出:
该程序将_id
=0
inimages
中的字典与AllAlbums
中的_id
69正确匹配。你知道吗
但是,在那之后(对于_id
的其余部分,如1,2,3…8899…9999),它不会进入第二个for
循环进行迭代。是的,我知道我的方法可能很粗糙,但我只需要运行这些基本代码。你知道吗
如何为AllAlbums
重新迭代此游标?你知道吗
抱歉,如果我没有正确格式化代码。我使用的是python2.7
AllAlbums对字典的定义应该是这样的:
(当然,它可以有更多的字段。)
假设
AllImages
和AllAlbums
是列表,您可以使用列表理解。你知道吗解决办法很简单。你知道吗
我只是简单地从游标实例
AllAlbums
中列出一个列表,并且能够多次重复。非常感谢那些向我指出这一点的人(:AllAlbumList = list(AllAlbums)
相关问题 更多 >
编程相关推荐