Olá alunos!
Semana passada não teve aula, eu estava viajando e não consegui deixar a aula pronta, mas agora voltamos à programação normal!
O pessoal ficou com algumas dúvidas sobre o exercício dos dados, mas em geral conseguiu resolver.
Hoje vamos tratar sobre a manipulação básica de arquivos. Vamos aprender a abrir um arquivo, gravar informações nele e também à ler informações dele.
Primeiro vamos ver como adicionar algum texto à um arquivo:
1 2 3 4 5 6 7 8 9 10 11 12 | #!/usr/bin/env python # -*- coding: utf-8 -*- arq = open('/tmp/lista.txt', 'w') texto = """ Lista de Alunos --- João da Silva José Lima Maria das Dores """ arq.write(texto) arq.close() |
É bem simples, não? Na linha 3 é aberto o arquivo “/tmp/lista.txt” em modo de gravação, caso o arquivo não exista ele será criado. Na quarta linha é definida a variável “texto” que, na linha 11, é incluída ao arquivo “/tmp/lista.txt”, que corresponde à variável “arq”. Na linha 12 o arquivo é fechado e então o programa termina. Aqui eu fiz um cat no arquivo e ele apareceu com as informações que estavam na variável “texto”.
Pessoal, entendam que esta é uma das maneiras mais simples de guardar informações, todos os programas que fizemos até agora perdem as informações assim que terminados.
Também é possível escrever em arquivos usando listas no lugar de variáveis apenas em texto:
1 2 3 4 5 6 7 8 9 10 11 | #!/usr/bin/env python # -*- coding: utf-8 -*- arq = open('/tmp/lista.txt', 'w') texto = [] texto.append('Lista de Alunos\n') texto.append('---\n') texto.append('João da Silva\n') texto.append('José Lima\n') texto.append('Maria das Dores') arq.writelines(texto) arq.close() |
Isto vai gerar o mesmo arquivo que o exemplo anterior, a diferença é que deu mais trabalho, mas dependendo da situação este modo pode ser melhor.
Certo, agora que já sabemos como adicionar informações vamos aprender a ler informações:
1 2 3 4 5 6 | #!/usr/bin/env python # -*- coding: utf-8 -*- arq = open('/tmp/lista.txt', 'r') texto = arq.read() print(texto) arq.close() |
A função read() lê o arquivo todo de uma vez para uma variável. Isso pode ser legal em casos como este, em que eu quero apenas exibir a variável. Mas vejam este outro exemplo:
1 2 3 4 5 6 7 | #!/usr/bin/env python # -*- coding: utf-8 -*- arq = open('/tmp/lista.txt', 'r') texto = arq.readlines() for linha in texto : print(linha) arq.close() |
A função readlines() retorna cada linha do arquivo como um elemento de uma lista. Tudo o que já sabemos sobre a manipulação de listas pode ser usado aqui =)
Lição de Casa
Usando apenas os modos de abertura de arquivos mostrados nesta aula (‘w’ e ‘r’) faça o seguinte:
1) Grave esta lista em um arquivo (Copie para o seu código para isso):
Gol
Uno
Palio
EcoSport
Clio
Strada
Golf
2) Inverta a ordem da lista e grave em um segundo arquivo.
3) Ordene a lista alfabeticamente em um terceiro arquivo.
4) Com a lista organizada faça a sua numeração em um quarto arquivo, assim:
1 – Clio
2 – EcoSport…
Boa sorte!
Outros textos que você pode gostar:
- Curso de Python – Aula 13 – Passando Argumentos Via Terminal Olá queridos alunos! Espero que todos estejam gostando tanto destas...
- Curso de Python – Aula 9 – Mais sobre listas e um pouco de “aleatoriedade” Olá pessoal! Como foram de festas de fim de ano?...
- Curso de Python – Aula 2 – Conceitos e variáveis Olá! Está na hora de começar o Curso de...
Posts relacionados trazidos a você pelo Yet Another Related Posts Plugin.















>

Danilo Cabello
on fev 8th, 2009
@ 17:45:
Vale lembrar que você não precisa dar readlines para iterar sobre o texto do arquivo, você pode fazer algo do gênero:
arq = open(“arquivo.txt”)
for linha in arq:
print linha
O modo de leitura é o modo padrão então pode ser omitido.
[Resposta]
Rodrigo Cesar
on fev 15th, 2009
@ 22:04:
Só lembrando que pode se usar o operador ‘+’ junto com o modo de abertura do arquivo.
[Resposta]
Curso de Python « Planeta Livre
on mar 8th, 2009
@ 22:55:
[...] Aula 12 – Manipulando Arquivos; [...]
Twitter Trackbacks for Curso de Python – Aula 12 – Manipulando Arquivos « InFog [casoft.info] on Topsy.com
on ago 30th, 2009
@ 17:05:
[...] Curso de Python – Aula 12 – Manipulando Arquivos « InFog infog.casoft.info/?p=476 – view page – cached #InFog RSS Feed InFog Atom Feed InFog » Curso de Python – Aula 12 – Manipulando Arquivos Feed de comentários InFog Instalando o BrOffice.org com corretor ortográfico no Debian/Ubuntu Update: Sorteadas as três Linux Magazine! As tirinhas estão voltando! — From the page [...]
ROBISON DE MARATAIZES-ES
on set 8th, 2009
@ 10:51:
Exercício terminado com sucesso!!!!
Indo pra aula 13…………………….Fui…………………….
[Resposta]