python三组字典两两匹配对应Value
示例1
priceinfo== {82620534: 41900, 82620542: 39900, 82620544: 39900, 82620557: 45900, 82620559: 40900, 82620560: 40900, 82620565: 40900, 82620567: 38900, 82620589: 39900, 82620607: 41900, 82620608: 42900, 82620612: 40900, 82620613: 43900, 82620618: 39900, 82620626: 38900, 82620627: 37900, 82620631: 40900}
skus_info= [{'skuId': 82620534, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164975}]}, {'skuId': 82620542, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164974}]}, {'skuId': 82620544, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164976}]}, {'skuId': 82620557, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164977}]}, {'skuId': 82620559, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164978}]}, {'skuId': 82620560, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164979}]}, {'skuId': 82620565, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164980}]}, {'skuId': 82620567, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164981}]}, {'skuId': 82620589, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164982}]}, {'skuId': 82620607, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164983}]}, {'skuId': 82620608, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164984}]}, {'skuId': 82620612, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164985}]}, {'skuId': 82620613, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164986}]}, {'skuId': 82620618, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164987}]}, {'skuId': 82620626, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164988}]}, {'skuId': 82620627, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164989}]}, {'skuId': 82620631, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164990}]}, {'skuId': 82620641, 'spuId': 13771, 'authPrice': 56900, 'status': 1, 'properties': [{'level': 1, 'propertyValueId': 164991}]}]
sku_dict== {82620534: 164975, 82620542: 164974, 82620544: 164976, 82620557: 164977, 82620559: 164978, 82620560: 164979, 82620565: 164980, 82620567: 164981, 82620589: 164982, 82620607: 164983, 82620608: 164984, 82620612: 164985, 82620613: 164986, 82620618: 164987, 82620626: 164988, 82620627: 164989, 82620631: 164990, 82620641: 164991}
sale_info= [{'propertyId': 4046, 'name': '尺码', 'value': '35', 'propertyValueId': 164975, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 0, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '36', 'propertyValueId': 164974, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 1, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '36.5', 'propertyValueId': 164976, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 2, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '37', 'propertyValueId': 164977, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 3, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '37.5', 'propertyValueId': 164978, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 4, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '38', 'propertyValueId': 164979, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 5, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '39', 'propertyValueId': 164980, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 6, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '39.5', 'propertyValueId': 164981, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 7, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '40', 'propertyValueId': 164982, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 8, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '41', 'propertyValueId': 164983, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 9, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '41.5', 'propertyValueId': 164984, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 10, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '42', 'propertyValueId': 164985, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 11, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '42.5', 'propertyValueId': 164986, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 12, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '43', 'propertyValueId': 164987, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 13, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '44', 'propertyValueId': 164988, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 14, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '44.5', 'propertyValueId': 164989, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 15, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '45', 'propertyValueId': 164990, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 16, 'definitionId': 6}, {'propertyId': 4046, 'name': '尺码', 'value': '46', 'propertyValueId': 164991, 'level': 1, 'customValue': '', 'showValue': 1, 'sort': 17, 'definitionId': 6}]
ValueId== 164975
propId = result_detail.get("data").get("item").get("saleInventoryNo")
propinfo = {
"propId":propId, # sku属性 数字id @
"propName": "size", # sku属性 中文
"values": []
}
sku_dict= {}
skus_info = result_detail.get("data").get("skus") # 获取商品skuId列表
print("skus_info=",skus_info)
for skus in skus_info:
skuId = skus.get("skuId")
properties = skus.get("properties")[0].get("propertyValueId")
sku_dict[skuId] = properties
print("sku_dict==", sku_dict)
# 价格dict
priceinfo = self.get_shop_Price(details_info)
# print("priceinfo", priceinfo)
sale_info = result_detail.get("data").get("saleProperties").get("list") # 获取商品尺寸列表
print("sale_info=",sale_info)
for sale in sale_info:
size = sale.get("value")
sizename = sale.get("name")
ValueId = sale.get("propertyValueId")
print("ValueId==", ValueId)
propertyId = sale.get("propertyId")
skuInfo={
"proPrice":None,
"price": None, # 售价
"skuId": None, # sku属性数字i d @
"pv":str(propertyId) + ":"+ str(ValueId), #//skuid对应的属性名和属性值组合p:v;p:v
"pvName": sizename + ":"+ str(size), #//sku名称组合 中文 颜色:白色 等
"quantity":None, # 库存
"isSale": True, # 是否在售
}
for k,v in sku_dict.items():
if v==ValueId:
skuInfo["skuId"] = k
break
for k,v in priceinfo.items():
if k==skuInfo["skuId"]:
skuInfo["price"] = v
skuInfo["proPrice"] = v
break
items["skuInfoList"].append(skuInfo)
# sku组合
values_info = {
"imgUrl": None, # sku属性 图片
"name": size, # sku属性 中文
"valueId": ValueId, # sku属性 数字id @
}
propinfo["values"].append(values_info)
items["skuProps"].append(propinfo)
#printDict(items)
return items
运行结果:
{
"proPrice":39900,
"price":39900,
"skuId":82620544,
"pv":"4046:164976",
"pvName":"尺码:36.5",
"quantity":null,
"isSale":true
},