You build the object before encoding it to a JSON string:
import json
data = {}
data['key'] = 'value'
json_data = json.dumps(data)
JSON is a serialization format, textual data representing a structure. It is not, itself, that structure.
Answer from Martijn Pieters on Stack OverflowYou build the object before encoding it to a JSON string:
import json
data = {}
data['key'] = 'value'
json_data = json.dumps(data)
JSON is a serialization format, textual data representing a structure. It is not, itself, that structure.
You can create the Python dictionary and serialize it to JSON in one line and it's not even ugly.
my_json_string = json.dumps({'key1': val1, 'key2': val2})
How to create JSON object in Python - Stack Overflow
python - how to generate json string - Stack Overflow
python - How to Turn JSON into a String? - Stack Overflow
How would you use python to create JSON files?
source : https://docs.python.org/3/library/json.html
import json
data = {"user2_proximity": 3, "Wifi_1": -80, "Wifi_2": -40, "Wifi_3": -40,
"thermostat": 18, "light": 0, "hour_of_day": 0, "user3_proximity": 3,
"user1_proximity": 1, "day_of_week": 1, "security": 0, "minute_of_hour": 9,
"Act_1": 1, "Act_2": 0, "Act_3": 0}
json_data = json.dumps(data)
response is a 2d array with values for keys/columns ("test_id","querytext","metrics").
[0]['testid1','query1','"metrics": { "ndcg@3": "1.0", "ndcg@7": "0.9" }']
[1]['testid2','query2','"metrics": { "ndcg@3": "1.0", "ndcg@7": "0.9" }']
column_names=("test_id","querytext","metrics")
json_response={}
for entry in response:
if entry[0] not in json_response:
json_response[entry[0]]=[]
json_element={}
json_element[column_names[1]]=entry[1]
json_element[column_names[2]]=json.loads(entry[2])
json_response[entry[0]].append(json_element)
return json.dumps(json_response)
Now json_response will be of following format
{
"tesid1": [{
"querytext": "query1",
"metrics": {
"ndcg@3": "1.0",
"ndcg@7": "0.9"
}
}],
"testid2": [{
"querytext": "query2",
"metrics": {
"ndcg@3": "1.0",
"ndcg@7": "0.9"
}
}]
}