Capítulo 18. Dados binários
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Qualquer pergunta suficientemente clara pode ser respondida por um único dígito binário - 0 ou 1, sim ou não.
Carl Sagan
Os dados de texto podem ser desafiadores, mas os dados binários podem ser, bem, interessantes. Você precisa conhecer conceitos comoendianness(a forma como o processador do seu computador divide os dados em bytes) e bits de sinal para números inteiros. Talvez você precise se aprofundar em formatos de arquivos binários ou pacotes de rede para extrair ou até mesmo alterar dados. Esta seção mostra os conceitos básicos de manipulação de dados binários em Python. Você verá como ler e gravar arquivos binários no Capítulo 20.
Converter dados binários com struct
Como você viu, o Python tem muitas ferramentas para manipular texto. As ferramentas para dados binários são muito menos prevalentes. A biblioteca padrão contém o módulo struct, que manipula dados semelhantes a structs em C e C++. Usando struct, você pode converter dados binários de e para estruturas de dados Python.
Vamos ver como isso funciona com dados de um arquivo PNG, um formato de imagem comum que você verá junto com arquivos GIF e JPEG. Vamos escrever um pequeno programa que extrai a largura e a altura de uma imagem de alguns dados PNG.
Usaremos o logotipo da O'Reilly, o pequeno társio com olhos de inseto mostrado na Figura 18-1.
Figura 18-1. O tarsier ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access