繁体   English   中英

尝试使用python将新的订单项添加到json文件

[英]Trying to append a new line item to a json file using python

我正在尝试将新的订单项添加到我的json文件中以进行运输。 我有以下python代码,可用来更改键的值:

resp['items'][0]['sku'] = 'DISCOUNT3'

但我想添加一个新的"items"

resp['items'][1]['sku'] = 'DISCOUNT3'

您没有提及resp['items']的类型。

实际上,如果您的resp['items']是一个列表对象 ,则不能仅向其添加键。 您可以按照以下步骤进行操作

>>> resp['items'].append({'sku':'DISCOUNT3'}) # if resp['items'] is empty, it will be located at index 0
>>> resp['items'].append({'sku':'DISCOUNT3'}) # will be located at index 1
>>> resp['items']
[{'sku': 'DISCOUNT3'}, {'sku': 'DISCOUNT3'}]

但是resp['items']不太可能成为列表,因为您大约要两个添加两个相同的元素。 如果resp['items']是一个字典对象 ,那么您可能想做的是

>>> resp['items'][0] = {'sku':'DISCOUNT3'}
>>> resp['items'][1] = {'sku':'DISCOUNT3'}
>>> resp['items']
{0: {'sku': 'DISCOUNT3'}, 1: {'sku': 'DISCOUNT3'}}

或者,由于要弄清您真正想要/想要的内容并不容易,因此请知道python字典中的键是唯一的 这意味着,如果您要创建一个以'DISCOUNT3'作为关联值的新密钥,则必须以一种或另一种方式添加一个新密钥。 例如

resp['items'][0]['sku'] = 'DISCOUNT3'
resp['items'][0]['new_sku'] = 'DISCOUNT3'

并且,作为resp['items']列表或字典,它将与此另一个指针相同

resp['items'][1]['sku'] = 'DISCOUNT3'
resp['items'][1]['new_sku'] = 'DISCOUNT3'

这工作谢谢大家

new_object = {'sku':'其他','name':'其他','数量':1,''unitPrice':5.00} resp ['items']。append(new_object)

在Python中将新项目添加到列表中是通过append()方法完成的:

new_object = {'sku': 'DISCOUNT3'}
resp['items'].append(new_object)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM