因此,我试图将大量的数据,100万以上的图像分类到唯一相关的媒体中。Python比较和构建字典的清单列表
为了达到这个目的,我创建了一个字典结构,它包含了这些图像的所有数据。这部分没什么问题,但我很努力地只把相关的图片加入到一个新的精简列表中。下面是一些读入脚本的示例数据。
100653067_00.jpg | (671, 900) | D://media/pr/product\1\0\100653067_00.jpg
100653067_01.jpg | (656, 900) | D://media/pr/product\1\0\100653067_01.jpg
100653067_02.jpg | (660, 900) | D://media/pr/product\1\0\100653067_02.jpg
1008661118_00.jpg | (500, 448) | D://media/pr/product\1\0\1008661118_00.jpg
1008668062_00.jpg | (1500, 1120) | D://media/pr/product\1\0\1008668062_00.jpg
1008669063_00.jpg | (1500, 1120) | D://media/pr/product\1\0\1008669063_00.jpg
101020202_00.jpg | (1000, 760) | D://media/pr/product\1\0\101020202_00.jpg
1008668062_01.jpg | (100, 110) | D://media/pr/product\1\0\1008668062_01.jpg
1008669063_001.jpg | (100, 110) | D://media/pr/product\1\0\1008669063_001.jpg
101020202_01.jpg | (504, 750) | D://media/pr/product\1\0\101020202_01.jpg
我有问题只采取最大的形象,即比较ID值。例如101020202_00.jpg应该接管101020202_01.jpg,因为它的整体尺寸最大。
for item in img_dict:
tempStore = img_dict[item]
locationVar = ''
idVar = ''
for item in img_dict:
i = img_dict[item]
if re.match(tempStore['ID']+"([a-zA-Z0-9_]*)", i['ID']):
if tempStore['Resolution X'] > i['Resolution X'] or tempStore['Resolution Y'] > i['Resolution Y']:
locationVar = tempStore['Location']
idVar = tempStore['ID']
highestResFile[idVar] = {'ID':idVar, 'Location': locationVar}
什么img_dict输出的一个例子:
{'000002353911_1': {'ID': '000002353911_1',
'Image Name': '000002353911_1.jpg',
'Location': 'D://media/pr/product\\0\\0\\000002353911_1.jpg',
'Resolution X': 406,
'Resolution Y': 406},
'000002355373_1': {'ID': '000002355373_1',
'Image Name': '000002355373_1.jpg',
'Location': 'D://media/pr/product\\0\\0\\000002355373_1.jpg',
'Resolution X': 406,
'Resolution Y': 406}}
你能告诉我们'img_dict'的conetnts? – Kevin
好的,我现在编辑这个问题。 – Grinch91