I am tring to create a json file with my lists in my python code:
I have
arr_of_id_by_user = [1, 2, 3]
arr_of_wallet_amount = [100,3400,200]
I would like this to return in the json file like
jsonfile = [{
"user" : 1,
"wallet amount": 100
},
{
"user" : 2,
"wallet amount": 3400
},
{
"user" : 3,
"wallet amount": 200
}]
Is it possible to do that? I tried to do a for
loop like this:
for elements in arr_of_id_by_user:
return jsonify({
"id": elements
})
and json.dumps()
but it don't work ...
maybe I have to do a tuple with (user.value[0], wallet_amount.value[0])
?
for peoples who try to do the reverse thing : How to create a Python list from a JSON object?
I would like to thank all those who helped me and who participate in the learning of all.
CodePudding user response:
Convert the lists to list of dictionaries and dump this to the file
arr_of_id_by_user = [1, 2, 3]
arr_of_wallet_amount = [100, 3400, 200]
with open('file.json', 'w') as file:
json.dump([{'user': id, 'wallet amount': amount} for id, amount in zip(arr_of_id_by_user, arr_of_wallet_amount)], file)
file.json
[{"user": 1, "wallet amount": 100}, {"user": 2, "wallet amount": 3400}, {"user": 3, "wallet amount": 200}]
CodePudding user response:
Another simple solution, using enumerate:
import json
arr_of_id_by_user = [1, 2, 3]
arr_of_wallet_amount = [100,3400,200]
jsonfile=[]
for index, value in enumerate(arr_of_id_by_user):
jsonfile.append({
"user": value,
"waller_amount": arr_of_wallet_amount[index]
})
print (json.dumps(jsonfile, indent=4))
CodePudding user response:
Python List to JSON Array
list_example = ["Mango", 1, 3,6, "Oranges"];
print(json.dumps(list_example))