How to Extract or Parse JSON from a String in Python
Here, we are given a string and we have to parse JSON format from the string in Python using different approaches. In this article, we will see how we can parse JSON from a string in Python.
Example:
Input: json_string = '{"India": "Delhi", "Russia": "Moscow", "Japan": "Tokyo"}'
Output: {'India': 'Delhi', 'Russia ': 'Moscow ', 'Japan': 'Tokyo'}
Explanation: JSON data is parsed from a given string.
3 Ways to Extract or Parse JSON from a String in Python
Below are some of the ways by which we can parse JSON from a string in Python:
- Using json.loads() Method
- Using JSONDecoder Class
- Using orjson Module
Table of Content
1. Using json.loads() Method
In this example, a JSON string representing person data is loaded using the json.loads
function, and individual elements such as name, age, and city are accessed and printed. The output displays the person's name, age, and city based on the parsed JSON data.
import json
s = '{"name": "Ram", "age": 22, "city": "India"}'
data = json.loads(s)
print("Name:", data["name"])
print("Age:", data["age"])
print("City:", data["city"])
import json
s = '{"name": "Ram", "age": 22, "city": "India"}'
data = json.loads(s)
print("Name:", data["name"])
print("Age:", data["age"])
print("City:", data["city"])
Output
Name: Ram Age: 22 City: India
2. Using JSONDecoder Class
The json.decoder
module in Python is used internally by the json
module for decoding JSON data. It is not typically used directly by programmers. However, if you want to use the json.decoder
module directly, you can do so by importing it and using its JSONDecoder
class.
In this example, the json.JSONDecoder()
method is used to directly decode the JSON string into a Python data structure. The result is printed, and it should output a dictionary with keys "one," "two," and "three" mapped to their respective string values.
import json
s = '{"one" : "1", "two" : "2", "three" : "3"}'
decoder = json.JSONDecoder()
data = decoder.decode(s)
print(data)
import json
s = '{"one" : "1", "two" : "2", "three" : "3"}'
decoder = json.JSONDecoder()
data = decoder.decode(s)
print(data)
Output
{u'three': u'3', u'two': u'2', u'one': u'1'}
3. Using orjson Module
In this example, the orjson
library is used to load a JSON string, representing country-city pairs, into a Python dictionary using orjson.loads
. The resulting dictionary is then printed, displaying the key-value pairs for countries and their corresponding capital cities.
import orjson
s = '{"India": "Delhi", "Russia": "Moscow", "Japan": "Tokyo"}'
data = orjson.loads(s)
print(data)
import orjson
s = '{"India": "Delhi", "Russia": "Moscow", "Japan": "Tokyo"}'
data = orjson.loads(s)
print(data)
Output:
{'India': 'Delhi', 'Russia ': 'Moscow ', 'Japan': 'Tokyo'}
Conclusion
In conclusion, one of the fundamental abilities for developers working with web-based applications and APIs is the ability to parse JSON from a string. Through comprehension of the principles and illustrations provided in this manual, developers can proficiently interpret JSON data and incorporate it into their software.