Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> python

Python - E/S de arquivos

Página anteriorPróxima página
Este capítulo cobre todas as funções básicas de E/S disponíveis em Python. Para mais funções, consulte a documentação padrão do Python.

Impressão na tela


A maneira mais simples de produzir saída é usando a função print onde você pode passar zero ou mais expressões separadas por vírgulas. Esta função converte as expressões que você passa em uma string e grava o resultado na saída padrão da seguinte forma −
Demonstração ao vivo
#!/usr/bin/python

print "Python is really a great language,", "isn't it?"

Isso produz o seguinte resultado em sua tela padrão -
Python is really a great language, isn't it?

Leitura da entrada do teclado


O Python fornece duas funções internas para ler uma linha de texto da entrada padrão, que por padrão vem do teclado. Essas funções são -

O raw_input Função


O raw_input([prompt]) A função lê uma linha da entrada padrão e a retorna como uma string (removendo a nova linha à direita).
#!/usr/bin/python

str = raw_input("Enter your input: ")
print "Received input is : ", str

Isso solicita que você insira qualquer string e exibiria a mesma string na tela. Quando digitei "Hello Python!", sua saída é assim -
Enter your input: Hello Python
Received input is :  Hello Python

A entrada Função


A entrada([prompt]) A função é equivalente a raw_input, exceto que assume que a entrada é uma expressão Python válida e retorna o resultado avaliado para você.
#!/usr/bin/python

str = input("Enter your input: ")
print "Received input is : ", str

Isso produziria o seguinte resultado em relação à entrada inserida -
Enter your input: [x*5 for x in range(2,10,2)]
Recieved input is :  [10, 20, 30, 40]

Abrindo e fechando arquivos


Até agora, você estava lendo e gravando na entrada e saída padrão. Agora, veremos como usar arquivos de dados reais.

Python fornece funções e métodos básicos necessários para manipular arquivos por padrão. Você pode fazer a maior parte da manipulação de arquivos usando um arquivo objeto.

A abertura Função


Antes de poder ler ou escrever um arquivo, você precisa abri-lo usando o open() embutido do Python função. Esta função cria um arquivo objeto, que seria utilizado para chamar outros métodos de suporte associados a ele.

Sintaxe

file object = open(file_name [, access_mode][, buffering])

Aqui estão os detalhes do parâmetro -

Aqui está uma lista dos diferentes modos de abrir um arquivo -
Nº Sr. Modos e descrição
1
r

Abre um arquivo somente para leitura. O ponteiro do arquivo é colocado no início do arquivo. Este é o modo padrão.
2
rb

Abre um arquivo para leitura somente em formato binário. O ponteiro do arquivo é colocado no início do arquivo. Este é o modo padrão.
3
r+

Abre um arquivo para leitura e escrita. O ponteiro de arquivo colocado no início do arquivo.
4
rb+

Abre um arquivo para leitura e escrita em formato binário. O ponteiro de arquivo colocado no início do arquivo.
5
s

Abre um arquivo somente para gravação. Substitui o arquivo se o arquivo existir. Se o arquivo não existir, cria um novo arquivo para gravação.
6
wb

Abre um arquivo para escrita somente em formato binário. Substitui o arquivo se o arquivo existir. Se o arquivo não existir, cria um novo arquivo para gravação.
7
w+

Abre um arquivo para escrita e leitura. Substitui o arquivo existente se o arquivo existir. Se o arquivo não existir, cria um novo arquivo para leitura e escrita.
8
wb+

Abre um arquivo para escrita e leitura em formato binário. Substitui o arquivo existente se o arquivo existir. Se o arquivo não existir, cria um novo arquivo para leitura e escrita.
9
um

Abre um arquivo para anexar. O ponteiro de arquivo está no final do arquivo se o arquivo existir. Ou seja, o arquivo está no modo de acréscimo. Se o arquivo não existir, ele cria um novo arquivo para gravação.
10
ab

Abre um arquivo para anexar em formato binário. O ponteiro de arquivo está no final do arquivo se o arquivo existir. Ou seja, o arquivo está no modo de acréscimo. Se o arquivo não existir, ele cria um novo arquivo para gravação.
11
a+

Abre um arquivo para anexação e leitura. O ponteiro de arquivo está no final do arquivo se o arquivo existir. O arquivo é aberto no modo de acréscimo. Se o arquivo não existir, ele cria um novo arquivo para leitura e escrita.
12
ab+

Abre um arquivo para anexação e leitura em formato binário. O ponteiro de arquivo está no final do arquivo se o arquivo existir. O arquivo é aberto no modo de acréscimo. Se o arquivo não existir, ele cria um novo arquivo para leitura e escrita.

O arquivo Atributos do objeto


Quando um arquivo é aberto e você tem um arquivo objeto, você pode obter várias informações relacionadas a esse arquivo.

Aqui está uma lista de todos os atributos relacionados ao objeto de arquivo -
Nº Sr. Atributo e descrição
1
arquivo.fechado

Retorna true se o arquivo estiver fechado, false caso contrário.
2
arquivo.modo

Retorna o modo de acesso com o qual o arquivo foi aberto.
3
arquivo.nome

Retorna o nome do arquivo.
4
arquivo.softspace

Retorna false se o espaço for explicitamente necessário com print, true caso contrário.

Exemplo

Demonstração ao vivo
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name
print "Closed or not : ", fo.closed
print "Opening mode : ", fo.mode
print "Softspace flag : ", fo.softspace

Isso produz o seguinte resultado -
Name of the file:  foo.txt
Closed or not :  False
Opening mode :  wb
Softspace flag :  0

O fechar() Método


O método close() de um arquivo object libera todas as informações não escritas e fecha o objeto de arquivo, após o qual não é mais possível escrever.

O Python fecha automaticamente um arquivo quando o objeto de referência de um arquivo é reatribuído a outro arquivo. É uma boa prática usar o método close() para fechar um arquivo.

Sintaxe

fileObject.close()

Exemplo

Demonstração ao vivo
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
print "Name of the file: ", fo.name

# Close opend file
fo.close()

Isso produz o seguinte resultado -
Name of the file:  foo.txt

Ler e gravar arquivos


O arquivo O objeto fornece um conjunto de métodos de acesso para facilitar nossas vidas. Veríamos como usar read() e escrever() métodos para ler e gravar arquivos.

A escrita() Método


O escrever() O método grava qualquer string em um arquivo aberto. É importante observar que as strings do Python podem ter dados binários e não apenas texto.

O método write() não adiciona um caractere de nova linha ('\n') ao final da string −

Sintaxe

fileObject.write(string)

Aqui, o parâmetro passado é o conteúdo a ser escrito no arquivo aberto.

Exemplo

#!/usr/bin/python

# Open a file
fo = open("foo.txt", "wb")
fo.write( "Python is a great language.\nYeah its great!!\n")

# Close opend file
fo.close()

O método acima criaria foo.txt arquivo e escreveria determinado conteúdo nesse arquivo e, finalmente, fecharia esse arquivo. Se você abrir este arquivo, ele terá o seguinte conteúdo.
Python is a great language.
Yeah its great!!

A ler() Método


O ler() O método lê uma string de um arquivo aberto. É importante notar que as strings do Python podem ter dados binários. além dos dados de texto.

Sintaxe

fileObject.read([count])

Aqui, o parâmetro passado é o número de bytes a serem lidos do arquivo aberto. Este método começa a ler desde o início do arquivo e se count está faltando, então ele tenta ler o máximo possível, talvez até o final do arquivo.

Exemplo


Vamos pegar um arquivo foo.txt , que criamos acima.
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10);
print "Read String is : ", str
# Close opend file
fo.close()

Isso produz o seguinte resultado -
Read String is :  Python is

Posições do arquivo


O dizer() O método informa a posição atual dentro do arquivo; em outras palavras, a próxima leitura ou gravação ocorrerá com essa quantidade de bytes desde o início do arquivo.

O procurar(deslocamento[, de]) O método altera a posição atual do arquivo. O deslocamento argumento indica o número de bytes a serem movidos. O de O argumento especifica a posição de referência de onde os bytes devem ser movidos.

Se de for definido como 0, significa usar o início do arquivo como a posição de referência e 1 significa usar a posição atual como a posição de referência e, se for definido como 2, o final do arquivo será tomado como a posição de referência.

Exemplo


Vamos pegar um arquivo foo.txt , que criamos acima.
#!/usr/bin/python

# Open a file
fo = open("foo.txt", "r+")
str = fo.read(10)
print "Read String is : ", str

# Check current position
position = fo.tell()
print "Current file position : ", position

# Reposition pointer at the beginning once again
position = fo.seek(0, 0);
str = fo.read(10)
print "Again read String is : ", str
# Close opend file
fo.close()

Isso produz o seguinte resultado -
Read String is :  Python is
Current file position :  10
Again read String is :  Python is

Renomeando e excluindo arquivos


Python os O módulo fornece métodos que ajudam a executar operações de processamento de arquivos, como renomear e excluir arquivos.

Para usar este módulo você precisa importá-lo primeiro e então você pode chamar qualquer função relacionada.

O método rename()


O renomear() O método recebe dois argumentos, o nome do arquivo atual e o novo nome do arquivo.

Sintaxe

os.rename(current_file_name, new_file_name)

Exemplo


A seguir está o exemplo para renomear um arquivo existente test1.txt
#!/usr/bin/python
import os

# Rename a file from test1.txt to test2.txt
os.rename( "test1.txt", "test2.txt" )

O remover() Método


Você pode usar remover() método para excluir arquivos fornecendo o nome do arquivo a ser excluído como argumento.

Sintaxe

os.remove(file_name)

Exemplo


A seguir está o exemplo para excluir um arquivo existente test2.txt
#!/usr/bin/python
import os

# Delete file test2.txt
os.remove("text2.txt")

Diretórios em Python


Todos os arquivos estão contidos em vários diretórios, e o Python também não tem problemas em lidar com eles. Os os O módulo tem vários métodos que ajudam a criar, remover e alterar diretórios.

O mkdir() Método


Você pode usar o mkdir() método do os módulo para criar diretórios no diretório atual. Você precisa fornecer um argumento para este método que contém o nome do diretório a ser criado.

Sintaxe

os.mkdir("newdir")

Exemplo


A seguir está o exemplo para criar um diretório test no diretório atual -
#!/usr/bin/python
import os

# Create a directory "test"
os.mkdir("test")

O chdir() Método


Você pode usar o chdir() método para alterar o diretório atual. O método chdir() recebe um argumento, que é o nome do diretório que você deseja tornar o diretório atual.

Sintaxe

os.chdir("newdir")

Exemplo


A seguir está o exemplo para entrar no diretório "/home/newdir" -
#!/usr/bin/python
import os

# Changing a directory to "/home/newdir"
os.chdir("/home/newdir")

O getcwd() Método


O getcwd() método exibe o diretório de trabalho atual.

Sintaxe

os.getcwd()

Exemplo


A seguir está o exemplo para fornecer o diretório atual -
#!/usr/bin/python
import os

# This would give location of the current directory
os.getcwd()

O rmdir() Método


O rmdir() O método exclui o diretório, que é passado como argumento no método.

Antes de remover um diretório, todo o seu conteúdo deve ser removido.

Sintaxe

os.rmdir('dirname')

Exemplo


A seguir está o exemplo para remover o diretório "/tmp/test". É necessário fornecer o nome totalmente qualificado do diretório, caso contrário, ele procurará esse diretório no diretório atual.
#!/usr/bin/python
import os

# This would  remove "/tmp/test"  directory.
os.rmdir( "/tmp/test"  )

Métodos relacionados a arquivos e diretórios


Existem três fontes importantes, que fornecem uma ampla gama de métodos utilitários para manipular e manipular arquivos e diretórios nos sistemas operacionais Windows e Unix. Eles são os seguintes -

python

  1. C Entrada Saída (E/S)
  2. C Manipulação de Arquivos
  3. Entrada, Saída e Importação do Python
  4. E/S de arquivo Python
  5. Gerenciamento de diretórios e arquivos Python
  6. Python verifica se o arquivo existe | Como verificar se existe um diretório em Python
  7. C - E/S de arquivo
  8. C - Arquivos de cabeçalho
  9. Arquivos e fluxos C++
  10. C# - E/S de arquivo