JSON
Reading and writing JSON files
The json
module allows reading and writing JSON files using json.load()
and json.dump()
.
JSON objects are mapped to dict
, while JSON arrays are converted into list
. Other native types, such as strings, integers, floats, and booleans, are also directly supported.
Example writing a dict
to a JSON file:
import json
data = {'name': 'Daniel', 'age': 24}
with open('data.json', 'w') as file:
json.dump(data, file)
Example reading a JSON file into a dict
:
with open('data.json', 'r') as file:
loaded_data = json.load(file)
print(loaded_data)
Output:
{'name': 'Daniel', 'age': 24}
Parsing JSON data
To parse a JSON string
into a Python object, use json.loads()
.
Example:
json_string = '{"name": "Daniel", "age": 24}'
parsed_data = json.loads(json_string)
print(parsed_data['name'])
Output:
Daniel
Handling complex data structures in JSON
For custom objects, define a function for serialization.
Example:
class City:
def __init__(self, name, temperature):
self.name = name
self.temperature = temperature
def city_to_dict(city):
return {'name': city.name, 'temperature': city.temperature}
city = City('Madrid', 45)
json_data = json.dumps(city, default=city_to_dict)
print(json_data)
Output:
{'name': 'Madrid', 'temperature': 45}
Last modified: 17 March 2025