检查列表是否包含python中的另一个列表

时间:2014-07-21 19:11:07

标签: python list python-3.x

我有两个列表,一个包含相册,文件对的列表,另一个只包含一张照片的信息 - 相册(位置0)和档案(在第1位)

photos = [["Trip to Thailand", "IMG_001.jpg"], ["Latvia 2010", "IMG_001.jpg"]]
photo = ["Latvia 2010", "IMG_001.jpg"]

如何检查照片列表是否在照片列表中?与photo in photos字符串类似。

相册文件的位置无关紧要,因为 等于 专辑

2 个答案:

答案 0 :(得分:9)

类似于photo in photos的字符串。不仅仅是类似的,完全像那样photo in photos也适用于列表中的列表:

>>> photos = [["Trip to Thailand", "IMG_001.jpg"], ["Latvia 2010", "IMG_001.jpg"]]
>>> photo = ["Latvia 2010", "IMG_001.jpg"]
>>> photo in photos
True

针对列表的成员资格测试只是遍历列表并对每个元素使用==等式测试以查看是否存在匹配。您的photo列表测试与第二个元素相同:

>>> photos[1] == photo
True

因为两个列表中的所有字符串都相同。

答案 1 :(得分:2)

photos = [["Trip to Thailand", "IMG_001.jpg"], ["Latvia 2010", "IMG_001.jpg"]]
photo = ["Latvia 2010", "IMG_001.jpg"]
print (photo in photos)
True

没有区别,你会像对字符串一样检查。