Criação de um arquivo temporário sem módulo tempfile
A tarefa de um arquivo temporário pode ser realizada sem o uso do módulo tempfile, criando um arquivo simples. Para isso, você deve criar um arquivo normal, fazer as tarefas temporárias e remover o arquivo após concluir as tarefas. Neste exemplo, um arquivo temporário chamado temp.TXT é aberto com o modo de escrita e um texto é escrito no arquivo temporário. 'os'módulo é usado aqui para ler o conteúdo do temp.TXT arquivo e remova o arquivo após completar a tarefa.
# Importar módulo de sistema operacionalimportar os
# Defina o nome do arquivo temporário
filename = 'temp.TXT'
# Abra o arquivo no modo de leitura
fh = abrir (nome do arquivo, 'w')
tentar:
# Imprima uma mensagem antes de escrever
print ("Gravando no arquivo >>> \ n")
# Escreva uma string no arquivo
fh.write ("Testando arquivo temporário")
# Feche o arquivo após escrever
fh.perto()
finalmente:
# Imprima uma mensagem antes de ler
impressão("<<
os.sistema ("cat temp.TXT")
# Imprimir nova linha
imprimir ("\ n")
# Remova o arquivo temporário
os.remover (nome do arquivo)
Resultado:
Execute o script. A seguinte saída aparecerá após a execução do script.
Criação de arquivo temporário usando o método TemporaryFile ()
arquivo temporário módulo é usado neste exemplo para criar um arquivo temporário. Este módulo tem muitos métodos para trabalhar com o arquivo temporário. Arquivo temporário() método é usado aqui para criar um arquivo temporário. O arquivo temporário é aberto no script como um arquivo de texto no modo de gravação. O arquivo temporário será criado no local atual por padrão. Duas linhas de texto são escritas no arquivo temporário usando Escreva() método. Próximo, procurar() método é chamado para definir o ponteiro do arquivo no início do arquivo. O conteúdo do arquivo é impresso no terminal usando leitura() método. perto() método do módulo é usado para fechar o arquivo e remover o arquivo automaticamente.
# Importar módulo de arquivo temporárioimportar arquivo temporário
# Declare o objeto para abrir o arquivo temporário para gravação
tmp = tempfile.TemporaryFile ('w + t')
tentar:
# Imprimir mensagem antes de escrever
print ('Escrevendo no arquivo temporário ...')
# Grava dados em arquivo temporário
tmp.escrever ('Dica do Linux \ n')
tmp.write ('O conteúdo do arquivo temporário')
# Vá para o início do arquivo
tmp.procurar (0)
# Leia o conteúdo do arquivo temporário
print ('Lendo arquivo temporário: \ n 0'.formato (tmp.leitura()))
finalmente:
# Remova o arquivo temporário automaticamente
tmp.perto()
Resultado:
Execute o script. A seguinte saída aparecerá após a execução do script.
Criação de arquivo temporário usando o método NamedTemporaryFile ()
No exemplo anterior, o nome do arquivo temporário é criado aleatoriamente. Mas se você deseja definir qualquer nome personalizado para o arquivo temporário, você deve usar NamedTemporaryFile () método para criar um arquivo temporário. Neste exemplo, um arquivo temporário é aberto no modo de gravação usando NamedTemporaryFile () método. Em seguida, o nome do arquivo é definido como temp.TXT. Uma linha de texto é gravada no arquivo e lida do arquivo como no exemplo anterior. Mencionamos antes que o arquivo temporário exclui automaticamente quando perto() método é chamado. Após a exclusão, 'os'módulo é usado aqui para verificar se o arquivo temporário existe ou não.
# Importar módulo de arquivo temporárioimportar arquivo temporário
# Importar módulo de sistema operacional
importar os
# Declare o objeto para abrir o arquivo temporário para gravação
tmp = tempfile.NamedTemporaryFile ('w + t')
# Declare o nome do arquivo temporário
tmp.nome = "temp.TXT"
tentar:
# Imprimir mensagem antes de escrever
imprimir ('Gravar dados no arquivo temporário ...')
# Grava dados no arquivo temporário
tmp.write ('Este é um conteúdo temporário.')
# Vá para o início do arquivo
tmp.procurar (0)
# Leia o conteúdo do arquivo temporário
print ('Ler o conteúdo do arquivo temporário: \ n 0'.formato (tmp.leitura()))
finalmente:
# Remova o arquivo automaticamente
tmp.perto()
# Verifique se o arquivo existe ou não
se (os.caminho.existe (tmp.nome)):
imprimir ('O arquivo existe')
senão:
imprimir ('O arquivo não existe')
Resultado:
Execute o script. A seguinte saída aparecerá após a execução do script.
Criação de um arquivo temporário com prefixo e sufixo
Todos os arquivos temporários são criados no local atual para os exemplos anteriores. A localização do arquivo temporário e o prefixo e sufixo do nome do arquivo temporário podem ser mencionados no momento da criação do arquivo usando NamedTemporaryFile () método. De acordo com o seguinte script, o nome do arquivo temporário começará com 'tm_' e terminar com '_fl'. O arquivo será armazenado no '/ tmp' pasta. Depois de criar o arquivo, o nome do arquivo temporário é impresso usando 'nome' propriedade. Próximo, 'os ' módulo é usado para verificar se o arquivo foi removido ou não.
# Importar módulo de arquivo temporárioimportar arquivo temporário
# Importar módulo de sistema operacional
importar os
# Declara objeto para criar um arquivo temporário com sufixo e prefixo
tmp = tempfile.NamedTemporaryFile (mode = 'w + t', prefix = 'tm_',
sufixo = '_ fl',
dir = '/ tmp')
# Imprime o nome do arquivo temporário
imprimir (tmp.nome)
tentar:
# Imprimir mensagem antes de escrever
imprimir ('Gravar dados no arquivo temporário ...')
# Grava dados em um arquivo temporário
tmp.write ('Este é um conteúdo temporário.')
finalmente:
# Remova o arquivo automaticamente
tmp.perto()
se (os.caminho.existe (tmp.nome) == Falso):
imprimir ('Arquivo removido')
Resultado:
Execute o script. A seguinte saída aparecerá após a execução do script.
Conclusão:
É um requisito comum para qualquer linguagem de programação criar um arquivo temporário para fazer muitas tarefas sob demanda e trabalhar com os dados que não são necessários para armazenamento permanente. Alguns métodos necessários de arquivo temporário módulo são explicados neste artigo para mostrar as maneiras de usar o arquivo temporário. Espero que o leitor seja capaz de criar e usar arquivos temporários facilmente depois de ler este artigo.