memoryview() Visão de memória
Última atualização: 2026-09-22
memoryview() Visão de memória
memoryview() retorna uma visão de memória de um objeto (como bytes/bytearray), permitindo acesso sem cópia ao buffer subjacente.
| Categoria | Funções internas |
|---|---|
| Tipo | Função interna |
| Versão do Python | all |
📝 Sintaxe
memoryview(obj)
⚙️ Parâmetros
| obj Obrigatório | An object supporting the buffer protocol (e.g. bytes, bytearray). |
|---|
Retorno:A memoryview object providing zero-copy access to the underlying buffer.
💥 Exceções
TypeError— Raised when the object does not support the buffer protocol.
▶ Exemplo
Edite o código, clique em Executar e veja o resultado no painel de saída:
Saída:
104 b'ell'
🏷️ Funções internas relacionadas
💡 Casos relacionados
Mais estudos de caso em breve — aguarde.
❓ Perguntas frequentes
QPara que serve memoryview?
ALer/operar dados em bytes sem copiar os dados subjacentes; adequado a cenários sensíveis a desempenho como arquivos grandes e pacotes de rede, evitando cópia ao fatiar.
QApós mv = memoryview(b'hello'), o que é mv[0]?
AÉ 104 (um inteiro), igual a bytes, que indexa por byte; mv[1:4] retorna uma view e para converter em bytes use .tobytes().
QQual é a diferença entre memoryview e uma fatia comum?
Ab'hello'[1:4] cria novos bytes (cópia de dados); memoryview(b'hello')[1:4] é uma view que aponta para o mesmo buffer subjacente, sem copiar.
QO que acontece ao chamar sobre um objeto que não suporta o protocolo de buffer?
ALevanta TypeError; apenas objetos como bytes, bytearray e array.array suportam o protocolo de buffer.