Python - Arquivos I / O.
Este capítulo abrange todas as funções básicas de E / S disponíveis no Python. Para mais funções, consulte a documentação padrão do Python.
Imprimir na tela.
A maneira mais simples de produzir saída é usando a instrução print, onde você pode passar zero ou mais expressões separadas por vírgulas. Esta função converte as expressões que você passa para uma string e grava o resultado na saída padrão como segue & menos;
Isso produz o seguinte resultado na tela padrão e menos;
Leitura de entrada de teclado.
O Python fornece duas funções internas para ler uma linha de texto a partir da entrada padrão, que por padrão vem do teclado. Essas funções são & menos;
A função raw_input.
A função raw_input ([prompt]) lê uma linha da entrada padrão e a retorna como uma string (removendo a nova linha à direita).
Isso solicita que você insira qualquer sequência e exibiria a mesma sequência na tela. Quando eu digitei "Hello Python!", Sua saída é assim e menos;
A função de entrada.
A função input ([prompt]) é equivalente a raw_input, exceto pelo fato de assumir que a entrada é uma expressão Python válida e retornar o resultado avaliado para você.
Isso produziria o seguinte resultado em relação à entrada & menos inserida;
Abrindo e fechando arquivos.
Até agora, você estava lendo e escrevendo para a entrada e saída padrão. Agora, vamos ver como usar arquivos de dados reais.
O Python fornece funções básicas e métodos necessários para manipular arquivos por padrão. Você pode fazer a maior parte da manipulação de arquivos usando um objeto de arquivo.
A função aberta.
Antes de ler ou escrever um arquivo, você precisa abri-lo usando a função open () do Python. Essa função cria um objeto de arquivo, que seria utilizado para chamar outros métodos de suporte associados a ele.
Aqui estão os detalhes dos parâmetros e menos;
file_name & minus; O argumento file_name é um valor de string que contém o nome do arquivo que você deseja acessar.
access_mode & minus; O access_mode determina o modo no qual o arquivo deve ser aberto, isto é, ler, escrever, anexar, etc. Uma lista completa de valores possíveis é fornecida abaixo na tabela. Este é um parâmetro opcional e o modo de acesso a arquivos padrão é lido (r).
buffering e menos; Se o valor do buffer estiver definido como 0, nenhum buffer ocorrerá. Se o valor do buffer é 1, o buffer de linha é executado ao acessar um arquivo. Se você especificar o valor do buffer como um inteiro maior que 1, a ação do buffer será executada com o tamanho do buffer indicado. Se negativo, o tamanho do buffer é o padrão do sistema (comportamento padrão).
Aqui está uma lista dos diferentes modos de abrir um arquivo & menos;
18,14. binascii - Converta entre binário e ASCII ¶
O módulo binascii contém vários métodos para converter entre binários e várias representações binárias codificadas em ASCII. Normalmente, você não usará essas funções diretamente, mas usará módulos wrapper como uu, base64 ou binhex. O módulo binascii contém funções de baixo nível escritas em C para maior velocidade que são usadas pelos módulos de nível mais alto.
O módulo binascii define as seguintes funções:
Converta uma única linha de dados codificados por uu de volta para binário e retorne os dados binários. As linhas normalmente contêm 45 bytes (binários), exceto a última linha. Dados de linha podem ser seguidos por espaços em branco.
Converta dados binários em uma linha de caracteres ASCII, o valor de retorno é a linha convertida, incluindo um caractere de nova linha. O comprimento dos dados deve ser no máximo 45.
binascii. a2b_base64 (string) ¶
Converta um bloco de dados base64 de volta para binário e retorne os dados binários. Mais de uma linha pode ser passada de cada vez.
binascii. b2a_base64 (dados) ¶
Converta dados binários em uma linha de caracteres ASCII na codificação base64. O valor de retorno é a linha convertida, incluindo um caractere de nova linha. A nova linha é adicionada porque o caso de uso original para essa função era alimentá-la com uma série de linhas de entrada de 57 bytes para obter linhas de saída que estão em conformidade com o padrão MIME-base64. Caso contrário, a saída está em conformidade com o RFC 3548.
Converta um bloco de dados imprimidos entre aspas novamente em binário e retorne os dados binários. Mais de uma linha pode ser passada de cada vez. Se o cabeçalho do argumento opcional estiver presente e verdadeiro, os sublinhados serão decodificados como espaços.
Converta dados binários em uma linha (s) de caracteres ASCII em codificação imprimível entre aspas. O valor de retorno é a (s) linha (s) convertida (s). Se o argumento opcional quotetabs estiver presente e verdadeiro, todas as guias e espaços serão codificados. Se o argumento opcional istext estiver presente e verdadeiro, as novas linhas não serão codificadas, mas o espaço em branco final será codificado. Se o cabeçalho opcional do argumento estiver presente e verdadeiro, os espaços serão codificados como sublinhados por RFC1522. Se o cabeçalho opcional do argumento estiver presente e falso, os caracteres da nova linha também serão codificados; caso contrário, a conversão de alimentação de linha poderá corromper o fluxo de dados binários.
binascii. a2b_hqx (string) ¶
Converta dados ASCII formatados em binhex4 em binários, sem fazer descompactação RLE. A cadeia deve conter um número completo de bytes binários ou (no caso da última parte dos dados binhex4) ter os bits restantes como zero.
binascii. rledecode_hqx (data) ¶
Execute a descompressão RLE nos dados, de acordo com o padrão binhex4. O algoritmo usa 0x90 após um byte como um indicador de repetição, seguido por uma contagem. Uma contagem de 0 especifica um valor de byte de 0x90. A rotina retorna os dados descompactados, a menos que os dados de entrada de dados terminem em um indicador de repetição órfão. Nesse caso, a exceção Incompleta é levantada.
binascii. rlecode_hqx (data) ¶
Realize a compactação RLE no estilo binhex4 nos dados e retorne o resultado.
Execute a conversão binária para ASCII do hexbin4 e retorne a string resultante. O argumento já deve ser codificado em RLE e ter um tamanho divisível por 3 (exceto possivelmente o último fragmento).
Calcule um valor CRC de dados de 16 bits, começando com um crc inicial e retornando o resultado. Isso usa o polinômio CRC-CCITT x 16 + x 12 + x 5 + 1, geralmente representado como 0x1021. Este CRC é usado no formato binhex4.
Calcule o CRC-32, a soma de verificação de dados de 32 bits, começando com um CRC inicial. Isso é consistente com a soma de verificação do arquivo ZIP. Como o algoritmo é projetado para uso como um algoritmo de soma de verificação, ele não é adequado para uso como um algoritmo de hash geral. Use da seguinte maneira:
Para gerar o mesmo valor numérico em todas as versões e plataformas do Python, use crc32 (data) & amp; 0xffffffff. Se você estiver usando apenas a soma de verificação no formato binário compactado, isso não é necessário, pois o valor de retorno é a representação binária de 32 bits correta, independentemente do sinal.
Alterado na versão 2.6: o valor de retorno está no intervalo [-2 ** 31, 2 ** 31-1], independentemente da plataforma. No passado, o valor seria assinado em algumas plataformas e não assinado em outros. Use & amp; 0xffffffff no valor se você quiser que ele corresponda ao comportamento do Python 3.
Alterado na versão 3.0: o valor de retorno é sem sinal e no intervalo [0, 2 ** 32-1], independentemente da plataforma.
Retorna a representação hexadecimal dos dados binários. Cada byte de dados é convertido na representação hexadecimal de 2 dígitos correspondente. A string resultante é, portanto, duas vezes maior que o tamanho dos dados.
binascii. a2b_hex (hexstr) ¶ binascii. unhexlify (hexstr) ¶
Retorna os dados binários representados pela cadeia hexadecimal hexstr. Esta função é o inverso de b2a_hex (). hexstr deve conter um número par de dígitos hexadecimais (que podem ser maiúsculas ou minúsculas), caso contrário, um TypeError é gerado.
exceção binascii. Erro ¶
Exceção levantada em erros. Estes são geralmente erros de programação.
exceção binascii. Incompleto
Exceção levantada em dados incompletos. Estes geralmente não são erros de programação, mas podem ser manipulados lendo-se um pouco mais de dados e tentando novamente.
Módulo base64 Suporte para codificação em estilo base64 compatível com RFC na base 16, 32 e 64. Módulo binhex Suporte para o formato binhex usado no Macintosh. Módulo uu Suporte para codificação UU usada no Unix. Módulo quopri Suporte para codificação imprimível entre aspas usada em mensagens de e-mail MIME.
7. Serviços de Dados Binários
Os módulos descritos neste capítulo fornecem algumas operações básicas de serviços para manipulação de dados binários. Outras operações em dados binários, especificamente em relação a formatos de arquivo e protocolos de rede, são descritas nas seções relevantes.
Algumas bibliotecas descritas em Serviços de Processamento de Texto também funcionam com formatos binários compatíveis com ASCII (por exemplo, re) ou com todos os dados binários (por exemplo, difflib).
Além disso, consulte a documentação dos tipos binários de dados internos do Python em Tipos de Sequência Binária - bytes, bytearray, memoryview.
Tópico anterior.
Próximo tópico.
Navegação.
A Python Software Foundation é uma corporação sem fins lucrativos. Por favor doe.
Comments
Post a Comment