A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.

Apresentações semelhantes


Apresentação em tema: "Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012."— Transcrição da apresentação:

1 Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012

2 Introdução Arquivos são usados para fazer operações de entrada e saída Disco, monitor, teclado, impressora Representação de arquivos em Python Classe file

3 Usando os arquivos Uso: Abrir o arquivo Ler ou escrever Fechar o arquivo

4 Abrindo os arquivos open(arquivo,modo,buffer) Retorna um objeto do tipo file Argumentos Arquivo = nome do arquivo com caminho. Se caminho omitido, busca no diretório local Modo = modo de abertura do arquivo, com padrão para leitura Opcional Tipos r =leitura w =escrita b =binário a =escrita a partir do final r+ =leitura e escrita Buffer =indica se a memória será usada para acelerar a operação Opcional Tipos 0 = não usa buffer 1 ou número negativo = buffer padrão 2 ou número > 2 = tamanho do buffer em bytes Evite usar, pois, usualmente, é fonte de erro.

5 Manipulação de arquivos Leitura Arquivo.read(num_bytes) Lê num_bytes de Arquivo e os retorna em uma string Se num_bytes não é especificado, retorna uma string contendo desde o ponto atual até o final Arquivo.readline() Lê uma linha do arquivo Arquivo.readlines() Gera uma lista com todas as linhas do arquivo

6 Manipulação de arquivos Escrita Arquivo.write(texto) Escreve texto no arquivo Comando termina mesmo que o conteúdo ainda esteja em buffer e não tenha ainda sido escrito em disco Métodos flush() e close() asseguram a escrita de todo o conteúdo do buffer Texto precisa ser do tipo string Se for escrever outro tipo de dado, converter com o método str()

7 Manipulação de arquivos Escrita Arquivo.writelines(lista_de_strings) Escreve as strings da lista no arquivo, concatenando-as.

8 Manipulação de arquivos Posição atual do ponteiro do arquivo Arquivo.tell() Posição medida em byte Reposicionamento do ponteiro Arquivo.seek(offset,a_partir_de) Offset = quanto deve ser movido Valores positivos ou negativo A_partir_de = de qual ponto deve ser marcado o offset Opcional, tendo por padrão o inicio do arquivo Valores 0 = inicio do arquivo 1 = posição atual 2 = fim do arquivo

9 Finalizando o uso do arquivo Arquivo.close() Finaliza o uso do arquivo Garante que todas as operações foram finalizadas para aquele arquivo

10 Exemplos Criando arquivos Se o arquivo é novo, é obrigatório indicar que é uma operação de escrita.

11 Exemplos Criando arquivos

12 Exemplos Abrindo arquivos binários

13 Exemplos Leitura de arquivos e seek

14 Exemplos Leitura de arquivos e seek Arquivo:

15 Exemplos Escrita Arquivo original:

16 Exemplos Escrita

17 Convenções de fim de linha A forma de representação do caractere fim de linha muda dependendo do sistema operacional Windows: \r\n Linux: \n MacOS: \r Python converte automaticamente essas representações para \n se o arquivo for aberto em modo texto (r,w,a,r+) Essa conversão não é feita se o arquivo é aberto em modo binário (b)

18 Varrendo um arquivo completo Os métodos read() e readlines() permitem ler todas as linhas Para fazer um loop linha a linha: for linha in obj_arquivo: print line

19 Arquivos especiais Comunicação com o monitor Comando print escreve no arquivo sys.stdout Comunicação com o teclado Comandos input e raw_input leem do arquivo sys.stdin Comunicação de erro e exceções Escrita das mensagens no arquivo sys.stderr

20 Exemplos Equivalente ao print. Equivalente ao raw_input, sem escrever algum texto na tela.

21 Redirecionamento de Saídas Programa > arquivo O conteúdo que seria escrito em sys.stdout é escrito em arquivo Em Linux, no shell bash, essa notação redireciona o sys.stderr para arquivo Programa < arquivo O conteúdo de sys.stdin, que seria a entrada, é substituído por arquivo Programa1 | Programa2 A saída de Programa1 é redirecionada para Programa2

22 Exemplo

23 Exercícios Em um script: Crie um arquivo Escreva 10 caracteres aleatórios nesse arquivo e finalize a linha Feche o arquivo Repita a operação anterior por 1000 vezes, mas as linhas devem ser adicionadas ao arquivo e não sobrescritas. Feche o arquivo Abra o arquivo que você acabou de criar e conte quantas vezes aparece a vogal a e a combinação de

24 Exercícios Crie dois arquivos e, em cada um, coloque um texto extraído da Internet com várias linhas. Em seguida, crie um script que: Mescle o conteúdo dos dois arquivos em um terceiro arquivo Inverta o conteúdo do 1º arquivo. Atenção: O resultado final não é um novo arquivo, mas o primeiro arquivo com o conteúdo sobrescrito.

25 Exercícios Crie um arquivo e coloque dentro dele um texto extraído da Internet com várias linhas. Em seguida: Guarde em uma lista as três últimas letras que aparecem antes de cada vogal.


Carregar ppt "Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012."

Apresentações semelhantes


Anúncios Google