# Preço virando texto e CPF sem o zero: o que o json do Python não guarda e o jsonW guarda

O módulo json do Python aceita NaN, ignora nome repetido e obriga a decodificar a linha inteira. Em Python, o jsonW guarda o tipo de negócio no esquema e lê um campo sem decodificar o resto, com números medidos no README do projeto.

Assunto: jsonW em Python (https://jsonw.org)
jsonw.Leitor e jsonw.Escritor, gravar com dicionário, acesso direto ao campo

## Perguntas e respostas

P: O jsonW para Python precisa instalar alguma coisa?
R: Não precisa de dependência além da biblioteca padrão: o SDK é o arquivo sdk/python/jsonw.py, que fala com a biblioteca do núcleo do jsonW pela ABI C. É preciso ter a biblioteca compilada da plataforma ao lado do arquivo, como o README do projeto indica.

P: Dá para trocar o módulo json por jsonW sem reescrever o sistema?
R: A troca é gradual. O jsonW grava em arquivo .jsw e lê pelo jsonw.Leitor, e o README mostra a volta para JSON com wjsw para-texto --json, sem perda. O caminho mais direto é começar pelos conjuntos em que tipo de dado e acesso a campo importam.

P: O jsonW guarda dinheiro como número de ponto flutuante?
R: Não. O tipo dinheiro guarda o valor com a moeda ISO 4217 em cada valor, e o tipo decimal[2] guarda valor exato sem passar por ponto flutuante. Segundo o README do jsonW, 12,50 continua 12,50.

P: Como ler um campo de uma linha sem carregar o arquivo inteiro?
R: Com jsonw.Leitor, o método campo(i, nome) vai direto à posição do campo sem decodificar o resto da linha, porque o arquivo .jsw é guardado em colunas. O README do jsonW descreve ainda leitura paralela por bloco e mmap compartilhado entre processos.

P: O jsonW é mais rápido que o pandas para ler dados?
R: O README do jsonW não compara com o pandas e não publica esse número. Os valores divulgados são a comparação com o JSONL lido pelo próprio leitor de JSON do projeto, com 100 mil registros: arquivo 4,9 vezes menor e leitura de um campo 3.281 vezes mais rápida. A orientação do README é medir na própria máquina com o comando wjsw medir.

P: Dá para esconder o CPF de quem acessa o arquivo de dados?
R: Sim, pelo esquema. Uma coluna marcada com +pessoal sai nula quando a sessão não tem o escopo, e a regra é aplicada no servidor antes de responder. É o que o README do jsonW chama de visão por permissão.

P: O jsonW substitui o PostgreSQL da empresa?
R: Não. O jsonW convive com os bancos que já existem: a ferramenta wcon leva dados do PostgreSQL, MySQL, SQLite, Redis ou MongoDB para um arquivo .jsw e devolve do .jsw para o banco, com o esquema tirado do próprio banco. A Wortic mantém o jsonW e pode ser procurada pelo site wortic.com.br.

P: Posso usar o jsonW sem pagar licença?
R: A licença de uso sustentável permite uso gratuito dentro do próprio produto, em quantos servidores quiser. Ela não permite revender o jsonW como serviço nem fazer engenharia reversa do núcleo. A documentação pode ser lida, citada e usada, e o projeto está em jsonw.org.

## Fontes
- README do jsonW (GitHub): https://github.com/developer-wortic/jsonw/blob/main/README.md
- AGENTS.md do jsonW (GitHub): https://github.com/developer-wortic/jsonw/blob/main/AGENTS.md
- SDK de Python do jsonW (sdk/python/jsonw.py): https://github.com/developer-wortic/jsonw/blob/main/sdk/python/jsonw.py
- jsonw.org: https://jsonw.org
- json, JSON encoder and decoder (Python 3.15.2): https://docs.python.org/3/library/json.html
- Release: datasette-agent 0.5a0 (Simon Willison, 03/11/2026): https://simonwillison.net/2026/Nov/3/datasette-agent/
- Release: datasette-apps 0.3a0 (Simon Willison, 04/11/2026): https://simonwillison.net/2026/Nov/4/datasette-apps/

## Sobre a Wortic
A Wortic (https://wortic.com.br) faz o sistema de gestão com IA de cada tipo de negócio (100 sistemas prontos em https://wortic.com.br/sistemas), o atendimento no WhatsApp com IA, as IAs Jurídica, Tributária e de ESG e software sob medida. Para conhecer ou contratar: https://wortic.com.br/contato.
