擅长:python、mysql、java
<p>这不是目前的问题(item缺少键<code>manufacturer</code>,可能更多),但是由于您只是复制具有完全相同键的字段,所以可以编写如下内容。还要注意,<code>item.get(key, None)</code>将以在产品中包含<code>None</code>值为代价来消除此错误(因此,如果您希望代码在失败时发生严重故障,这可能是不好的)</p>
<pre><code>import json
input_file = open ('data/bestbuy_seo.json')
json_array = json.load(input_file)
product_list = []
product_keys = ('objectID', 'image', 'thumbnailImage',
'shortDescription', 'categories', 'manufacturer',
'customerReviewCount', 'name', 'url', 'shipping',
'salePrice', 'bestSellingRank', 'type',
'salePrice_range')
for item in json_array:
product_list.append(dict((key, item.get(key, None)) for key in product_keys))
# Let's dump it to the screen to see if it works
print json.dumps(product_list, indent=4)
</code></pre>