Table of Contents
JSON stands for JavaScript Object Notation and it is one of the most popular data formats to store and transfer data between two points. Python has a built-in module called json that we can use to work with JSON.
Parsing JSON
We can parse a string of JSON into a Python dictionary using the loads() function in the json module:
PYTHONimport json
raw_json = '{ "name": "Timmy Turner", "age": 10, "show": "The Fairly OddParents"}'
parsed = json.loads(raw_json)
print(parsed)
JSON{'name': 'Timmy Turner', 'age': 10, 'show': 'The Fairly OddParents'}
While it looks the same as the input, because it is a dictionary, you can access it like you would any dictionary:
PYTHONimport json
raw_json = '{ "name": "Timmy Turner", "age": 10, "show": "The Fairly OddParents"}'
parsed = json.loads(raw_json)
print(parsed["name"])
print(parsed["age"])
print(parsed["show"])
BASHTimmy Turner
10
The Fairly OddParents
Converting to JSON
You can do the reverse and convert a Python object into a string of JSON using the dumps() function:
PYTHONimport json
obj = {
"name": "Timmy Turner",
"age": 10,
"show": "The Fairly OddParents"
}
converted = json.dumps(obj)
print(converted)
JSON{"name": "Timmy Turner", "age": 10, "show": "The Fairly OddParents"}
Formatting JSON
When you are outputting to JSON, you can pass optional parameters to the dumps() function to format the output for us.
Here's how to indent the string to make it more readable:
PYTHONimport json
obj = {
"name": "Timmy Turner",
"age": 10,
"show": "The Fairly OddParents"
}
converted = json.dumps(obj, indent=4)
print(converted)
JSON{
"name": "Timmy Turner",
"age": 10,
"show": "The Fairly OddParents"
}
Resources
Leave us a message!
×
Getting Started with Express
Git Tutorial: Learn how to use Version Control
How to deploy a PHP app using Docker
How to deploy a MySQL Server using Docker
Using Puppeteer and Jest for End-to-End Testing
Getting Started with Handlebars.js
Getting User Location using JavaScript's Geolocation API
Creating a Twitter bot with Node.js
Using Push.js to Display Web Browser Notifications
Getting Started with React
Getting Started with Vuex: Managing State in Vue
Using Axios to Pull Data from a REST API
