Modos de abertura de arquivos em Python

Modos de abertura de arquivos em Python

Overview

Bem-vindo ao fascinante mundo do Python, onde abrir e manusear arquivos se torna uma brisa graças à função open! Se você já se perguntou como ler, escrever ou até mesmo alterar os dados de um arquivo de maneira eficiente, você está no lugar certo. Neste post, vamos desbravar juntos a sintaxe da função open, mergulhando nas particularidades de cada modo de abertura ― tudo isso de forma descomplicada e direta. Prepare-se para elevar suas habilidades de programação a um novo nível!

O Python possui a função open, que abre arquivos e os prepara para utilização. Esta função possui diversos modos de abertura, o padrão é abrir o arquivo no modo leitura (r). Veja abaixo a sintaxe e a diferença entre estes modos…

Sintaxe:

open(file, mode=“r”, buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
(argumentos em azul são opcionais)

Modos de abertura:

Modo de AberturaDescrição
rAbre o arquivo para leitura ou o cria, caso não exista. O cursor é posicionado no inicio do arquivo.
r+Abre o arquivo para leitura e escrita ou o cria, caso não exista. O cursor é posicionado no inicio do arquivo.
wSe o arquivo existir, ele é aberto para escrita e o seu tamanho é reduzido para zero (conteúdo do arquivo é apagado). SE não existir, ele é criado na hora. O cursor é posicionado no inicio do arquivo.
w+Se o arquivo já existir, ele tem tamanho reduzido para zero (conteúdo do arquivo é apagado) e é aberto para escrita e leitura. Se não existir, um novo arquivo é criado. O cursor é posicionado no inicio do arquivo.
aAbre o arquivo para escrita. Caso não exista, ele é criado e o cursor é posicionado no final do arquivo, As linhas que forem escritas estarão sempre no final do arquivo, mesmo se funções como fseek(6) ou similares forem utilizadas.
a+Abre o arquivo para leitura e escrita. Caso não exista, ele é criado e o cursor é posicionado no final do arquivo, As linhas que forem escritas estarão sempre no final do arquivo, mesmo se funções como fseek(6) ou similares forem utilizadas.