我需要在Json对象前面加上“Users”:“但是我不知道如何处理”:”。我得到的最接近的结果是把冒号放在引号内,然后再多出一个逗号。有什么想法吗?所以问题是冒号放在引号中,它加了一个逗号,这是api端点不接受的
这是它应该是什么样子
**["users" :** [{
"email": "hallbeth@placeholder.email",
"dataFields": {
"favoriteTomatoe": "Green Zebra",
"daysSinceLastOrder": "137",
"city": "Lake Michaelberg",
"firstName": "Richard",
"zip": "58570",
"lastName": "Tyler",
"age": "50",
"state": "UT",
"totalTomatoOrders": "23",
"streetAddress": "925 Holland Burgs Suite 652",
"phoneNumber": "+67(4)7940410189",
"gender": "male",
"customMessageOne": "Esse magnam voluptatibus id ex ipsam assumenda excepturi tenetur."
}
}]
下面是输出结果
**["users :",** [{
"email": "hallbeth@placeholder.email",
"dataFields": {
"favoriteTomatoe": "Green Zebra",
"daysSinceLastOrder": "137",
"city": "Lake Michaelberg",
"firstName": "Richard",
"zip": "58570",
"lastName": "Tyler",
"age": "50",
"state": "UT",
"totalTomatoOrders": "23",
"streetAddress": "925 Holland Burgs Suite 652",
"phoneNumber": "+67(4)7940410189",
"gender": "male",
"customMessageOne": "Esse magnam voluptatibus id ex ipsam assumenda excepturi tenetur."
}
}]
这是我的密码
import requests
import json
import csv
import pdb
limit = 2
curVal = 0
user_list = []
user_list_2 = [
("users" + ' ' + ':')]
with open('john.csv', 'r') as csv_file:
csv_file = csv.reader(csv_file)
next(csv_file)
for line in csv_file :
user_list.append(
[{
"email" : line[2],
"dataFields" : {
"firstName": line[0],
"lastName" : line[1],
"favoriteTomatoe" : line[3],
"totalTomatoOrders" : line[4],
"daysSinceLastOrder" : line[5],
"zip" : line[6],
"phoneNumber" : line[7],
"age" : line[8],
"streetAddress" : line[9],
"city" : line[10],
"state" : line[11],
"customMessageOne" : line[12],
"gender" : line[13]
}
}])
if curVal == limit:
body = json.dumps(user_list_2 + user_list)
print(body)
headers = {
"Content-Type": "application/json",
"Accept": "application/json"}
res = requests.request("POST",
"https://api.iterable.com/api/users/bulkUpdate?apiKey="key",
headers=headers, data=body)
curVal = 0
user_list = []
print(res.url + "\n\n" + str(res.status_code) + res.text)
else:
curVal = curVal + 1
似乎你的代码中有很多误解
首先,将每个用户添加到
user_list
中,作为包含一个用户字典的单个项列表。您只需跳过单个项目列表级别,然后简单地附加字典:然后可以考虑Python和JSON类型之间的某种映射:
因此,可以将
user_list
解释为一个JSON数组,如果希望将它指定为JSON对象的Users
属性,只需将user_list
指定为Python dict的Users
键的值。然后传递Python dict 对于json.dumps
函数,应返回所需的JSON数据:相关问题 更多 >
编程相关推荐