bytes() Sequência de bytes imutável
Última atualização: 2026-09-22
bytes() Sequência de bytes imutável
bytes() retorna uma sequência de bytes imutável; pode ser construída a partir de uma sequência de bytes, string + codificação ou iterável de inteiros.
| Categoria | Funções internas |
|---|---|
| Tipo | Função interna |
| Versão do Python | all |
📝 Sintaxe
bytes([source[, encoding]]]])
⚙️ Parâmetros
| source Opcional | Optional: an int, string, iterable of ints, or bytes-like object.(Padrão:None) |
|---|---|
| encoding Opcional | Encoding name used when source is a str, e.g. 'utf-8'.(Padrão:None) |
| errors Opcional | Error-handling scheme for encoding, e.g. 'strict' / 'ignore'.(Padrão:None) |
Retorno:bytes. An immutable bytes object.
💥 Exceções
TypeError— Raised when source has an unsupported type.ValueError— Raised when an element is outside 0-255.
▶ Exemplo
Edite o código, clique em Executar e veja o resultado no painel de saída:
Saída:
b'hello'
b'\xe4\xb8\xad'
🏷️ Funções internas relacionadas
💡 Casos relacionados
Mais estudos de caso em breve — aguarde.
❓ Perguntas frequentes
QO que bytes(5) retorna? Muitos acham que é b'5'.
ARetorna b'\x00\x00\x00\x00\x00'. Um argumento inteiro indica o comprimento, gerando esse número de bytes zero, não a forma textual do número.
QQual é a diferença entre bytes() e bytearray()?
AA diferença central é a mutabilidade: bytes é imutável, bytearray é mutável; as demais regras de construção (inteiro, string+encoding, iterável de inteiros) são as mesmas.
QPor que bytes('中文') dá erro?
APara construir bytes a partir de uma string é preciso passar também a codificação: apenas bytes('中文', encoding='utf-8') funciona, caso contrário levanta TypeError informando a falta do encoding.
QComo converter bytes de volta para string?
AUse o método decode(), ex.: b'\xe4\xb8\xad'.decode('utf-8') retorna '中'; a forma equivalente é str(b, encoding='utf-8').