Você está na página 1de 24

Python

LAB IPE
Aula 09 - MANIPULANDO ARQUIVOS
Operações Básicas

 Abertura do arquivo
 Liga uma variável do programa com o arquivo físico
 Essa variável deve ser usada no programa para
manipular o arquivo (ler e escrever no arquivo)
 Fechamento do arquivo
 Encerramento da conexão da variável com o arquivo
físico
 Leitura do conteúdo do arquivo
 Escrita no arquivo
Detalhes do comando de abertura
do arquivo
 varArquivo = open(nomeArquivoFísico, modo, buffering)
 modo
 x: cria (inicializa) um arquivo vazio
 r: leitura (default) – o arquivo deve existir
 w: escrita – conteúdo existente no arquivo será apagado
 a: escrita a partir do final do arquivo (append)
 +: (usado com r) indica leitura e escrita
Manipulando arquivos

Praticar Criar um arquivo (ou limpar/apagar um já existente)

arquivo = open('arquivo.txt', 'w')


# w – modo de escrita
arquivo.close()
Manipulando arquivos

Praticar Escrever em um arquivo

arquivo = open('arquivo.txt', 'w')


# w – modo de escrita
arquivo.write('nova linha')
arquivo.close()
Manipulando arquivos

Praticar Ler as linhas de um arquivo em uma lista

arquivo = open('arquivo.txt', 'r') #


r – modo de leitura
lista = arquivo.readlines()
arquivo.close()
Manipulando arquivos
Adicionar conteúdo ao arquivo
arquivo = open('arquivo.txt', 'r')
Praticar # modo leitura
conteudo = arquivo.readlines()
conteudo.append('\n Nova linha')
# insere novo conteúdo
arquivo = open('arquivo.txt', 'w')
# modo escrita
arquivo.writelines(conteudo)
# escreve o conteúdo
arquivo.close()
Manipulando arquivos
Adicionar conteúdo ao arquivo (com laço while)
arquivo = open('arquivo.txt', 'r')
# Abre o arquivo (modo leitura)
Praticar conteudo = arquivo.readlines()
x=1
while x <= 5:
conteudo.append('\n Nova linha')
# insere novo conteúdo
x=x+1
arquivo = open('arquivo.txt', 'w')
# Abre o arquivo (modo escrita)
arquivo.writelines(conteudo)
# escreve o conteúdo
arquivo.close()
Manipulando arquivos
Adicionar conteúdo ao arquivo (com laço while)
arquivo = open('arquivo.txt', 'r') #Abre arquivo (leitura)
conteudo = arquivo.readlines()
Praticar
x=1
while x <= 9:
linha='\nNova linha'+str(x)
conteudo.append(linha) #insere novo conteúdo -> linha
x=x+1
arquivo = open('arquivo.txt', 'w')#Abre o arquivo (escrita)
arquivo.writelines(conteudo) # escreve o conteúdo
arquivo.close()
Praticar

Exercícios
Praticar
Exercício 1 - Praticar
arquivo = open('arqpython.txt', 'r‘)
conteudo = arquivo.readlines()
x=1
while x <= 10:
conteudo.append('\n Nova linha‘)
x=x+1
arquivo = open('arqpython.txt', 'w‘)
arquivo.writelines(conteudo)
arquivo.close()
Praticar
Exercício 2 - Praticar
arquivo = open('arqpython.txt', 'r‘)
conteudo = arquivo.readlines()
x=1
while x <= 15:
linha='\nNova linha'+str(x)
conteudo.append(linha)
x=x+1
arquivo = open('arqpython.txt', 'w')
arquivo.writelines(conteudo)
arquivo.close()
Praticar 3) Desenvolver um programa em python que receba 25 números digitados pelo usuário e guarde
esses números em um arquivo.
4) Desenvolver um programa em python que receba 20 salários digitados pelo usuário e guarde
esses salários em um arquivo.
5) Desenvolver um programa em python que receba a altura de 35 alunos digitados pelo usuário
e guarde essas alturas em um arquivo.
6) Desenvolver um programa em python que receba um número digitado pelo usuário e mostre
a tabuada desse número e guarde essa tabuada em um arquivo.
7) Desenvolver um programa em python que receba uma lista de nomes enquanto o usuário
desejar e grave esses nomes em um arquivo.
8) Desenvolver um programa em python que leia o arquivo do exercício anterior e imprima
todos os nomes.
9) Desenvolver um programa em python que leia um arquivo com números inteiros e gere dois
outros arquivos, um com números pares e outro com números ímpares.
3) Desenvolver um programa em python que receba 25 números
digitados pelo usuário e guarde esses números em um arquivo.

arquivo = open('exercicio03.txt', 'a')


for i in range(25):
numero=float(input("Numero: "))
arquivo.write(str(numero)+"\n")
arquivo.close()
Praticar
4) Desenvolver um programa em python que receba 20
salários digitados pelo usuário e guarde esses salários
em um arquivo.
arquivo = open('exercicio04.txt', 'a')

for i in range(25):
salario=float(input("Salário: "))
arquivo.write(str(salario)+"\n")
arquivo.close()
Praticar

5) Desenvolver um programa em python que receba a


altura de 35 alunos digitados pelo usuário e guarde essas
alturas em um arquivo.
arquivo = open('exercicio05.txt', 'a')
for i in range(25):
altura=float(input("altura: "))
arquivo.write(str(altura)+"\n")
arquivo.close()
Praticar

6) Desenvolver um programa em python que receba


um número digitado pelo usuário e mostre a tabuada
desse número e guarde essa tabuada em um arquivo.
arquivo = open('exercicio06.txt', 'w')
n = int(input("Número: "))
for i in range(10):
linha = str(i+1)+" X "+str(n)+" =
"+str((i+1) * n)
print(linha)
arquivo.write(linha+"\n")
arquivo.close()
Praticar 7) Desenvolver um programa em python que receba
uma lista de nomes enquanto o usuário desejar e
grave esses nomes em um arquivo.

arquivo = open('exercicio07.txt', 'a')


resposta='s'
while (resposta.lower() != 'n'):
nome = input("Nome: ")
arquivo.write(nome+"\n");
resposta = input("Deseja Continuar?
<S/N>: ")

arquivo.close()
Praticar

8) Desenvolver um programa em python que leia o


arquivo do exercício anterior e imprima todos os nomes.
arquivo = open('exercicio07.txt', 'r')
nomes = arquivo.readlines()
nomes = [item.rstrip('\n') for item in
nomes]
for nome in nomes:
print(nome)
arquivo.close()
Praticar

9) Desenvolver um programa em python que leia um


arquivo com números inteiros e gere dois outros
arquivos, um com números pares e outro com
números ímpares.
Gerar o arquivo de entrada
arquivo = open("D://pyArq9.txt", “x")
arquivo.close()
arquivo = open("D://pyArq9.txt", "w")
x = 0
while x < 20:
numero = input("Digite numero ")
arquivo.write(numero + "\n")
x += 1
arquivo.close()
Ex 09
arquivo = open("D://pyArq9.txt", "r")
arqpar = open("D://pypar.txt","w")
arqimpar = open("D://pyimpar.txt","w")

x = 0
divis = 0

for numero in arquivo:


divis = int(numero)
if divis % 2 == 0:
arqpar.write(str(divis) + "\n")
else:
arqimpar.write(str(divis) + "\n")

arquivo.close()
arqimpar.close()
arqpar.close()
Lista Pares

arquivo = open("D://pypar.txt",“r")
pares = arquivo.readlines()
pares = [item.rstrip('\n') for item
in pares]
for par in pares:
print(par)
arquivo.close()
Lista Ímpares
arquivo = open("D://pyimpar.txt",“r")
impares = arquivo.readlines()

impares = [item.rstrip('\n')
for item in impares]

for impar in impares:


print(impar)

arquivo.close()

Você também pode gostar