Você está na página 1de 21

Curso Profissional de Técnico de Gestão e Programação de Sistemas Informáticos

PROGRAMAÇÃO E 2020/2021

SISTEMAS DE
INFORMAÇÃO (PSI) 10ºD

Agrupamento de Escolas Diogo de Macedo


Escola Secundária Diogo de Macedo, Olival-VNG Profª Célia Santos
FICHEIROS 2

» Todos os tipos de dados utilizados até este módulo são Voláteis, ou seja, são armazenados
temporariamente enquanto o programa está a funcionar.

» Quando o programa termina, todos os dados usados e produzidos desaparecem.

» No entanto, como sabemos, na vida real há necessidade de armazenar a informação para além do
tempo em que o programa está a correr no computador e até ser utilizada por outro programa.
FICHEIROS 3

» neste caso a informação tem de ser guardada em suportes de memória secundária ou externa ou
na “nuvem”. A unidade básica de armazenamento de informação em sistemas informáticos é
chamada de ficheiro (File).

» Um Ficheiro (File) é um tipo estruturado de dados constituído por uma sequência de


elementos, todos do mesmo tipo.
FICHEIROS 4

» a manipulação de ficheiros irá de certa maneira permitir, que os dados que vamos trabalhar a
partir deste momento, se tornem persistentes, que a informação deixe de ser volátil.

» Sempre que executamos um programa, é apresentada a informação na consola e ao encerramos


o programa, a informação perde-se.

» Podemos a partir deste momento, criar e reutilizar a informação, sempre que for necessário.
TIPOS DE FICHEIROS 5

» Em programação, temos dois tipos principais de ficheiros:

» FICHEIROS DE TEXTO: são legíveis diretamente no sistema operativo, pois são constituídos
exclusivamente por caracteres. São normalmente designados por ficheiros de texto simples
(texto sem formatação). Cada linha de um ficheiro de texto é terminada com um caractere
especial de fim de linha, em geral, é o caractere newline (\n). Esse caractere finaliza a linha
atual e diz ao interpretador que uma nova linha começa.
TIPOS DE FICHEIROS 6

» Em programação, temos dois tipos principais de ficheiros:

» FICHEIROS BINÁRIOS: são formados por agrupamentos de bits ou bytes em código


máquina. Um ficheiro binário é um qualquer ficheiro que não seja considerado um ficheiro
de texto padrão. Este tipo de ficheiros, só podem ser processados por uma aplicação
específica, que compreenda a estrutura do ficheiro. Como por exemplo, um ficheiro PDF,
um mp3, um ficheiro de Excel, etc.
FICHEIROS EM Python 7

» Para trabalhar com ficheiros em Python é necessário utilizar o objeto file.

» Os objetos file possuem métodos e atributos que podem ser usados para recolher informações e
trabalhar o ficheiro.

» Um objeto file possui um atributo nome, que é o nome do ficheiro a ser manipulado, e um
atributo modo, que é a forma como o ficheiro será acedido.
MODOS DE ACESSO AOS FICHEIROS 8

» Para termos uma ação correta na manipulação de ficheiros, devemos efetuar as seguintes
operações, pela seguinte sequência:

» Abrir o Ficheiro pretendido.


» Chamar os métodos adequados (leitura/escrita).
» Executar o processamento dos dados do ficheiro.
» Fechar o ficheiro.
ABERTURA DO FICHEIRO 9

» Sendo os ficheiros entidades que existem fora do nosso programa, antes de utilizar o ficheiro é
necessário identificar qual a localização física deste e o modo como queremos utilizá-lo.

» A operação através do qual identificamos a localização do ficheiro e o modo como queremos


utilizá-lo é conhecida por Operação de abertura do ficheiro. Em Python usamos a função open(),
que retorna um objeto que irá permitir manipular/trabalhar com o ficheiro.

» Sintaxe da função open:

open(nome, modo)
» nome – cadeia de caracteres que corresponde ao nome externo do ficheiro (inclui localização).
» modo – cadeia de caracteres que corresponde ao modo de acesso ao ficheiro.
ABERTURA DO FICHEIRO 10

Modo Tipos de Acesso


r Somente de Leitura

w Escrita, apagando (substituindo) o conteúdo


existente no ficheiro

a Escrita, preservando o conteúdo existente


(acrescenta). O ficheiro é criado, se não existir.
O texto é inserido no final do ficheiro.

+ Abre o ficheiro para atualização - leitura e


escrita: r+ ou w+

Exemplo: f = open(“test.txt”, “w”)

Obs.: Caso não seja indicado nenhum MODO, o padrão é o r.


FECHO DO FICHEIRO 11

» Em programação é boa prática fechar qualquer ficheiro que já não esteja a ser usado. Para isso,
utiliza-se a função close(). A Operação de fecho de um ficheiro, desfaz a ligação entre o programa
e o ficheiro, libertando espaço e evitando corrupções da informação guardada no ficheiro.

» Sintaxe da função close: nome.close()


» nome – cadeia de caracteres que corresponde ao nome externo do ficheiro (inclui
localização).

» Exemplo: f.close()
LEITURA DO FICHEIRO 12

A partir do momento em que é criada uma variável associada a um ficheiro aberto para leitura,
podemos usar as seguintes funções para efetuar operações de leitura sobre o ficheiro:

Operação Tipos de Operação


read() Lê todo o ficheiro de uma só vez
read(N) Lê N bytes

readline() Lê a próxima linha do ficheiro

readlines() Lê e guarda como sequência de linhas (lista)


LEITURA DO FICHEIRO 13

Sintaxe do método: nome.operação

» Ao ler a informação de um ficheiro, o Python mantém um indicador, o indicador de leitura, que


indica qual o próximo elemento a ser lido do ficheiro.

» O indicador de leitura é colocado no início do ficheiro quando o ficheiro é aberto para leitura e
movimenta-se no sentido de início para fim do ficheiro sempre que se efetua uma leitura.
LEITURA DO FICHEIRO 14

» Exemplo: Supondo que o ficheiro teste.txt está na pasta do nosso programa e cujo conteúdo é o seguinte:
Este é um teste
que mostra como o Python
lê ficheiros de caracteres

EXEMPLO 1:

f = open(‘teste.txt’, ‘r’) ln3 = f.readline()


ln1 = f.readline() ln3
ln1 ‘lê ficheiros de caracteres\n’
‘Este é um teste\n’ ln4 = f.readline()
ln2 = f.readline() ln4
ln2 ‘’
‘que mostra como o Python\n’ f.close()
LEITURA DO FICHEIRO 15

» Exemplo: Supondo que o ficheiro teste.txt está na pasta do nosso programa e cujo conteúdo é o seguinte:
Este é um teste
que mostra como o Python
lê ficheiros de caracteres

EXEMPLO 2:

f = open(‘teste.txt’, ‘r’) print(ln2)


ln1 = f.readline() que mostra como o Python
ln1 lê ficheiros de caracteres
‘Este é um teste\n’ f.close()
ln2 = f.read()
ln2
‘que mostra como o Python\nlê ficheiros de
caracteres\n’
LEITURA DO FICHEIRO 16

» Exemplo: Supondo que o ficheiro teste.txt está na pasta do nosso programa e cujo conteúdo é o seguinte:
Este é um teste
que mostra como o Python
lê ficheiros de caracteres

EXEMPLO 3:

f = open(‘teste.txt’, ‘r’)
linhas = f.readlines()
linhas
[‘Este é um teste\n’, ‘que mostra como o
Python\n’, ‘lê ficheiros de caracteres\n’]
f.close()
EXERCÍCIO 17

FICHA DE TRABALHO 1
ESCRITA EM FICHEIROS 18

» Primeiro temos de abrir o ficheiro para escrita, com um dos modos ‘w’ ou ‘a’. Ao abrir um ficheiro
para escrita, se o ficheiro não existir ele é criado pelo Python.
» Tal como na leitura de ficheiros, ao escrever informação num ficheiro, o Python mantém um
indicador, o indicador de escrita, que indica qual a posição do próximo elemento a ser escrito no
ficheiro.
» Podemos efetuar as seguintes operações de escrita sobre o ficheiro:
Operação Tipos de Operação
write(str) Escreve a cadeia de caracteres (str) num ficheiro, a partir da
posição do indicador de escrita. Devolve o número de
caracteres escritos no ficheiro.

writelines(sequência) Escreve cada um dos elementos da sequência (tupla ou lista) a


partir da posição do indicador de escrita, no ficheiro.
ESCRITA EM FICHEIROS 19

Sintaxe do método: nome.operação


» Exemplo:

f1 = open(‘teste1.txt’, ‘w’) f1.close()


f1.write(‘abc’)
3 f1 = open(‘teste1.txt’, ‘w’) # o ficheiro teste1.txt é aberto
f1.write(‘defg’) para escrita
4 f1.close()
f1.close()
f1 = open(‘teste1.txt’, ‘r’) # o ficheiro teste1.txt é aberto
f1 = open(‘teste1.txt’, ‘r’) # o ficheiro teste1.txt é aberto para leitura
para leitura linhas = f1.read()
linhas = f1.read() linhas
linhas ‘’
‘abcdef’ f1.close()
ESCRITA EM FICHEIROS 20

» Se o modo escolhido para a abertura do ficheiro for o ‘w’, o Python coloca o indicador de escrita
no início do ficheiro, ou seja, o ficheiro fica sem quaisquer elementos e o seu conteúdo anterior
perde-se.
» Se o modo escolhido para a abertura do ficheiro for o ‘a’, o Python coloca o indicador de escrita
no fim do ficheiro, ou seja, o ficheiro continua com os elementos anteriores.
» Se o modo escolhido para a abertura do ficheiro for o ‘r+’(modo de leitura e escrita sem
truncamento), o indicador de escrita é o início do ficheiro, ou seja, se escrevermos algo no
ficheiro vai escrever por cima. Para escrever no final temos de colocar o indicador de escrita no
fim do ficheiro ou ler todo o ficheiro (o indicador passa automaticamente para o fim do ficheiro).
» Se o modo escolhido para a abertura do ficheiro for o ‘w+’(modo de leitura e escrita com
truncamento) o conteúdo do ficheiro é limpo. Se o ficheiro não existir é criado um.
EXERCÍCIO 21

FICHA DE TRABALHO 2

Você também pode gostar