我试图将一个数组从Objective-C拉到我的Python代码中,当我这样做时,我收到以下错误:
TypeError: (
5850,
5500,
5170,
2500,
2400,
2400,
2400,
2500,
5170,
5500,
5850
) is not JSON serializable
我试图在我的Objective-C包装器调用周围放置一个dict()方法将它变成一个字典,而且它也不起作用(可能不是我想要的)无论如何,因为我想要一个包含这些值的Python数组对象)。我该如何解决这个错误?我做了一些搜索,大多数过去的问题询问DJango方法给出了类似的问题,但并不是我需要的。
答案 0 :(得分:2)
您需要一个Python数组对象,即list()
个对象。使用dict()
没有任何意义,除非你想要一本字典。
使用list(1,2,3..,n)
或[1, 2, 3..., n ]
制作Python列表对象。然后,您将按各自的索引访问元素。
Python list()
对象有资格作为JSON数组/对象。
答案 1 :(得分:-1)
dict()
对象,或者在这种情况下,JSON对象需要一个键后跟一个值。
因此,当您尝试将数组转换为JSON时,您将获得TypeError
。
向此阵列添加一些键将修复错误。
示例代码:
json_payload = {
'0': 5850,
'1': 5500,
'2': 5170,
'3': 2500,
'4': 2400,
'5': 2400,
'6': 2400,
}
如果你想创建一个python list
对象,试试这个:
nums = [ 5850, 5500, 5170, 2500, 2400, 2400, 2400]
然后可以将 nums
作为json对象发送。