View Discussion
Improve Article
Save Article
View Discussion
Improve Article
Save Article
The full form of JSON is JavaScript Object Notation. It means that a script [executable] file which is made of text in a programming language, is
used to store and transfer the data. Python supports JSON through a built-in package called JSON. To use this feature, we import the JSON package in Python script. The text in JSON is done through quoted-string which contains the value in key-value mapping within { }.
Functions Used:
- json.loads[]: json.loads[] function is present in python built-in ‘json’ module. This function is used to parse the JSON
string.
Syntax: json.loads[json_string]
Parameter: It takes JSON string as the parameter.
Return type: It returns the python dictionary object.
- json.dumps[]: json.dumps[] function is present in python built-in ‘json’ module. This function is used to convert Python object into JSON string.
Syntax: json.dumps[object]
Parameter: It takes Python Object as the parameter.
Return type: It returns the JSON string.
- update[]: This method updates the dictionary with elements from another dictionary object or from an iterable key/value pair.
Syntax: dict.update[[other]]
Parameters: Takes another dictionary or an iterable key/value pair.
Return type: Returns None.
Example 1: Updating a JSON string.
Python3
import
json
x
=
'{
"organization"
:
"GeeksForGeeks"
,
"city"
:
"Noida"
,
"country"
:
"India"
}'
y
=
{
"pin"
:
110096
}
z
=
json.loads[x]
z.update[y]
print
[json.dumps[z]]
Output:
{“pin”: 110096, “organization”: “GeeksForGeeks”, “country”: “India”, “city”: “Noida”}
Example 2: Updating a JSON file. Suppose the JSON file looks like this.
We want to add another JSON data after emp_details. Below is the implementation.
Python3
import
json
def
write_json[new_data, filename
=
'data.json'
]:
with
open
[filename,
'r+'
] as
file
:
file_data
=
json.load[
file
]
file_data[
"emp_details"
].append[new_data]
file
.seek[
0
]
json.dump[file_data,
file
, indent
=
4
]
y
=
{
"emp_name"
:
"Nikhil"
,
"email"
:
""
,
"job_profile"
:
"Full Time"
}
write_json[y]
Output:
I am trying to add an element to a json file in python but I am not able to do it.
This is what I tried untill now [with some variation which I deleted]:
import json
data = [ { 'a':'A', 'b':[2, 4], 'c':3.0 } ]
print 'DATA:', repr[data]
var = 2.4
data.append[{'f':var}]
print 'JSON', json.dumps[data]
But, what I get is:
DATA: [{'a': 'A', 'c': 3.0, 'b': [2, 4]}]
JSON [{"a": "A", "c": 3.0, "b": [2, 4]}, {"f": 2.4}]
Which is fine because I also need this to add a new row instead an element but I want to get something like this:
[{'a': 'A', 'c': 3.0, 'b': [2, 4], "f":2.4}]
How should I add the new element?