Pular para o conteúdo

Guia 6 de 53

Literais de bytes e formatação

Conserve os valores exatos dos bytes e escolha largura e precisão em tempo de execução.

Nesta página

Valores exatos de bytes

b"\xAB" guarda um byte com valor 171. Cada escape hexadecimal exige exatamente dois dígitos. O texto sem escapes fornece bytes UTF-8, enquanto os escapes conservam zero e bytes inválidos em UTF-8. Literais de bytes não interpolam expressões. .len() conta os bytes; .bytes() devolve uma cópia como valores inteiros, indexados a partir de zero como os demais arrays.

// A assinatura KTX 2 contém bytes inválidos em UTF-8.
let signature = b"\xABKTX 20\xBB\r\n\x1A\n"
print(signature.len())
print(signature.bytes()[0])
print(signature.bytes()[7])

Literais de bytes funcionam na VM e nos backends native e LLVM, incluindo a VM do navegador. O wasm-aot independente ainda os rejeita na compilação porque não tem uma representação para bytes opacos.

Largura e precisão dinâmicas

Coloque uma expressão inteira entre chaves no especificador de formato da interpolação. O valor executa primeiro; depois, cada parâmetro de formato executa uma vez, da esquerda para a direita. Largura e precisão precisam ser inteiros entre zero e um milhão. A precisão decimal é aplicada antes do alinhamento. A emissão JavaScript ainda informa que especificadores de formato não são suportados.

// Defina a precisão monetária e a largura das colunas em um só lugar.
let decimal_places = 2
let label_width = 10
let name = "Coffee"
let price = 12.345
print("|{name:<{label_width}}|{price:.{decimal_places}f}|")
print("|{price:>{label_width}.{decimal_places}f}|")

Largura e precisão dinâmicas funcionam na VM e nos backends native e LLVM, incluindo a VM do navegador. O wasm-aot independente ainda as rejeita na compilação porque não tem um runtime de especificadores de formato.

DOCS / OPINIÃO

Esta página deixou alguma pergunta?

Conte onde a explicação perdeu você. A documentação também faz parte da experiência da linguagem.

Índice global

Encontre seu caminho pela Zolo

Experimente uma ideia

Comece por aqui

9 resultados

9 resultados

enespt-br