JSON to python object
The follwing code creates dynamic attributes with the objects keys recursively.
JSON object - fb_data.json:
{ "name": "John Smith", "hometown": { "name": "New York", "id": 123 }, "list": [ "a", "b", "c", 1, { "key": 1 } ], "object": { "key": { "key": 1 } } }On the conversion we have 3 cases:
- lists
- dicts (new object)
- bool, int, float and str
Now the key, value pairs are attributes - objects.
output:
John Smith New York 123 1 1Paste JSON as Code
Supports TypeScript, Python, Go, Ruby, C#, Java, Swift, Rust, Kotlin, C++, Flow, Objective-C, JavaScript, Elm, and JSON Schema.
- Interactively generate types and (de-)serialization code from JSON, JSON Schema, and TypeScript
- Paste JSON/JSON Schema/TypeScript as code
quicktype infers types from sample JSON data, then outputs strongly typed models and serializers for working with that data in your desired programming language.
output:
# Generated by //quicktype.io # # To change quicktype's target language, run command: # # "Set quicktype target language" from typing import List, Union class Hometown: name: str id: int def __init__(self, name: str, id: int) -> None: self.name = name self.id = id class Key: key: int def __init__(self, key: int) -> None: self.key = key class Object: key: Key def __init__(self, key: Key) -> None: self.key = key class FbData: name: str hometown: Hometown list: List[Union[Key, int, str]] object: Object def __init__(self, name: str, hometown: Hometown, list: List[Union[Key, int, str]], object: Object) -> None: self.name = name self.hometown = hometown self.list = list self.object = objectThis extension is available for free in the Visual Studio Code Marketplace.
View Discussion
Improve Article
Save Article
View Discussion
Improve Article
Save Article
JSON stands for 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 value in key-value mapping within { }. It is similar to the dictionary in Python.
Function Used:
- json.load(): json.loads() function is present in python built-in ‘json’ module. This function is used to parse the JSON
string.
Syntax: json.load(file_name)
Parameter: It takes JSON file as the parameter.
Return type: It returns the python dictionary object.
Example 1: Let’s suppose the JSON file looks like this:
We want to convert the
content of this file to Python dictionary. Below is the implementation.
Python3
import json
with open('data.json') as json_file:
data = json.load(json_file)
print("Type:", type(data))
print("\nPeople1:", data['people1'])
print("\nPeople2:", data['people2'])
Output :
Example 2: Reading nested data
In the above JSON file, there is a nested dictionary in the first key people1. Below is the implementation of reading nested data.
Python3
import json
with open('data.json') as json_file:
data = json.load(json_file)
print(data['people1'][0])
print("\nPrinting nested dictionary as a key-value pair\n")
for i in data['people1']:
print("Name:", i['name'])
print("Website:", i['website'])
print("From:", i['from'])
print()
Output :