JSON files let us save and share data in a simple text format. Working with JSON files helps programs read and write data easily.
Working with JSON files in Python
Start learning this pattern below
Jump into concepts and practice - no test required
import json # To read JSON from a file: with open('file.json', 'r') as file: data = json.load(file) # To write JSON to a file: with open('file.json', 'w') as file: json.dump(data, file, indent=4)
Use json.load() to read JSON data from a file and convert it into Python objects.
Use json.dump() to write Python objects as JSON into a file. The indent parameter makes the file easy to read.
import json # Reading JSON data from a file with open('data.json', 'r') as f: info = json.load(f) print(info)
person dictionary into 'person.json' with nice formatting.import json # Writing Python data to a JSON file person = {'name': 'Anna', 'age': 25} with open('person.json', 'w') as f: json.dump(person, f, indent=2)
import json # Reading and writing JSON in one program with open('input.json', 'r') as f: data = json.load(f) # Change data data['new_key'] = 'new value' with open('output.json', 'w') as f: json.dump(data, f, indent=4)
This program saves a user dictionary to a JSON file, then reads it back and prints it.
import json # Sample data to save user = { 'username': 'johndoe', 'active': True, 'score': 42 } # Write data to JSON file with open('user.json', 'w') as file: json.dump(user, file, indent=2) # Read data back from JSON file with open('user.json', 'r') as file: loaded_user = json.load(file) print('Loaded user data:') print(loaded_user)
JSON files store data as text, so they are easy to share and read.
Python converts JSON objects to dictionaries and JSON arrays to lists.
Always close files or use with to handle files safely.
JSON files help save and load data in a simple text format.
Use json.load() to read JSON from files and json.dump() to write Python data to JSON files.
Working with JSON files makes programs share and keep data easily.
Practice
What is the main purpose of using JSON files in Python programs?
Solution
Step 1: Understand JSON file usage
JSON files store data in a text format that is easy to read and share.Step 2: Identify the correct purpose
Saving and loading data simply matches the main use of JSON files in Python.Final Answer:
To save and load data in a simple text format -> Option CQuick Check:
JSON files = data storage [OK]
- Thinking JSON speeds up code execution
- Confusing JSON with GUI creation
- Assuming JSON compiles code
Which of the following is the correct way to open a JSON file named data.json for reading in Python?
Solution
Step 1: Understand file modes
'r' mode opens a file for reading, 'w' for writing, 'a' for appending, 'x' for creating new file.Step 2: Choose mode for reading JSON
To read JSON data, the file must be opened in 'r' mode.Final Answer:
open('data.json', 'r') -> Option AQuick Check:
Read mode = 'r' [OK]
- Using 'w' which overwrites the file
- Using 'a' which appends data
- Using 'x' which fails if file exists
What will be the output of the following Python code?
import json
with open('data.json', 'w') as f:
json.dump({'name': 'Alice', 'age': 30}, f)
with open('data.json', 'r') as f:
data = json.load(f)
print(data['age'])Solution
Step 1: Write dictionary to JSON file
The code writes {'name': 'Alice', 'age': 30} to 'data.json' using json.dump.Step 2: Read JSON file and access 'age'
json.load reads the file back as a dictionary, then data['age'] accesses the value 30.Final Answer:
30 -> Option BQuick Check:
data['age'] = 30 [OK]
- Expecting string output instead of integer
- Confusing json.dump and json.load usage
- Assuming file read fails without writing first
Identify the error in this code snippet that tries to read JSON data from a file:
import json
f = open('data.json', 'r')
data = json.load(f)
f.close()
print(data)Solution
Step 1: Check import and file open
The code imports json and opens the file in 'r' mode correctly.Step 2: Verify json.load and file close
json.load reads JSON data properly, and file is closed with f.close().Final Answer:
No error, code works correctly -> Option DQuick Check:
Code reads JSON file correctly [OK]
- Forgetting to import json
- Opening file in wrong mode
- Not closing the file after reading
You want to save a Python dictionary {'a': 1, 'b': 2, 'c': 3} to a JSON file and then read it back. Which code snippet correctly does this and prints the value of key 'b'?
Solution
Step 1: Write dictionary to JSON file correctly
json.dump writes Python dict to file opened in 'w' mode.import json with open('file.json', 'w') as f: json.dump({'a': 1, 'b': 2, 'c': 3}, f) with open('file.json', 'r') as f: data = json.load(f) print(data['b'])does this correctly.Step 2: Read JSON file and access key 'b'
json.load reads JSON back from file opened in 'r' mode, then data['b'] prints 2.Final Answer:
Code in Option A correctly saves and reads JSON, printing 2 -> Option AQuick Check:
json.dump to write, json.load to read [OK]
- Using json.load to write data
- Using json.dump to read data
- Opening files in wrong modes
