我解析了一些 JSON 数据,创建了
bb_json
,并尝试将基于它的 CSV 数据写入 csv_writer
。我有这个代码:
for product in bb_json['products']:
row = []
row.append(product['sku'])
if product['name']:
row.append(product['name'])
else:
row.append("")
if product['description']:
row.append(product['description'])
else:
row.append("none")
row.append(product['image'] + " ")
if product['manufacturer']:
row.append(product['manufacturer'])
else:
row.append("UNKNOWN")
row.append(product['upc'])
row.append(product['department'])
row.append(product['class'])
row.append(product['subclass'])
csv_writer.writerow(row)
但是我尝试从
KeyError
读取数据时得到了 product
,因为其中许多值都未填充。如何在row
中填写默认值?
您可以使用
your_dict.get(key, "default value")
而不是直接引用某个键。
如果您无法定义默认值并想要执行其他操作(或只是省略该条目):
if key in dict:
rank = dict[key]
else:
# do something or just skip the else block entirely
您可以使用如下语法:
product.get("your field", "default value")