with open('config.json', 'r') as f: config = json.load
Standard Library Idioms

Meaning

Opens a file, parses its JSON content, and assigns the resulting object to a variable, ensuring the file is automatically closed.

Primary Function

File I/O and JSON parsing

Communicative Purpose

Load configuration or data stored in JSON format from a file.

Pattern

with open(filepath, mode) as file_handle: data = json.load(file_handle)

Core Structure

with open(...) as ...:

Função primária

File I/O and JSON parsing

Propósito comunicativo

Load configuration or data stored in JSON format from a file.

Situações de gatilho

When reading a settings file at startup, when loading data for processing, when deserializing JSON from a file.

Contextos

General Python scripts, web applications, data‑analysis notebooks, CLI tools.

Padrão

with open(filepath, mode) as file_handle: data = json.load(file_handle)

Estrutura central

with open(...) as ...:

Slots de substituição

filepath: str, mode: 'r'|'rt', file_handle: identifier, target_var: identifier, json_loader_arg: identifier (usually file_handle)

Colocados típicos

  • json.load
  • as
  • with open
  • mode='r'

Substituições comuns

  • json.loads(f.read())
  • pathlib.Path('file.json').read_text() then json.loads
  • yaml.safe_load for YAML files

Erros comuns

Opening with binary mode 'rb' for json.load, forgetting to specify encoding for non‑ASCII files, not catching json.JSONDecodeError

Similar / contraste

Manual open/close without a context manager, using pickle.load for binary serialization, using csv.reader for CSV files

Interferências

Coming from JavaScript: expecting require('file.json'); Coming from C: forgetting to close the file handle

Família do chunk

  • context manager
  • file I/O
  • JSON parsing

Nuance

Use encoding='utf-8' for files that may contain non‑ASCII characters; json.load works only on text files, not binary streams.

Efeito pragmático

Guarantees the file is closed automatically, reduces boilerplate, and prevents resource leaks.

Dica de memória

Open‑load‑close with a context manager

Nota

Remember to specify encoding='utf-8' for files that may contain non‑ASCII characters; otherwise rely on the platform default encoding which may cause decode errors.

Upgrade path

import json, pathlib config = json.loads(pathlib.Path('config.json').read_text(encoding='utf-8'))

Frequência: Very highFormulaicidade: Semi-fixedTipo de construção: with statement that opens a file for reading and immediately loads JSON via json.load, binding the result to a variable.Prioridade de aquisição: Active recallPrioridade de output: BothTag de espaçamento: ImmediateIdioma?: Sim

Log in to save chunks.