我是新手Python
,但我爱上了这门语言!
我有一个巨大的数据库,sqlite3
其中包含文件路径row 0
和MD5
.row 3
我需要根据它们搜索重复文件,MD5
并且我想将这些重复文件组织为dictionaries
,如下所示:
{"b23e5d453643f66b68634d0204884cdf":an array of all paths that have the same MD5, like the one that is the key of this dictionary}
我正在使用以下代码搜索数据库并制作tuples
:
db = sqlite3.connect('imges.db')
with db:
cur = db.cursor()
cur.execute("SELECT * FROM IMAGES")
while True:
row = cur.fetchone()
if row == None:
break
self.duplesOfMD5 = [[row[3]],[row[0]]]
print self.duplesOfMD5
这给了我以下输出:
[[u'b23e5d453643f66b68634d0204884cdf'], [u'/Volumes/Backup/images_to_test/File_one_copy.png']]
[[u'b23e5d453643f66b68634d0204884cdf'], [u'/Volumes/Backup/images_to_test/File_one.png']]
[[u'f0b4108172c50f243d9e0132df4703a0'], [u'/Volumes/Backup/images_to_test/File_with_no_duplicate.png']]
我尝试过的每一种可能的解决方案都非常合适而且性能很糟糕。最好的pythonic方法是什么?
谢谢!