Python Encontrar Cordel em Ficheiro

  1. Utilize o ficheiro readlines() Método para encontrar uma string num ficheiro em Python
  2. Utilize o ficheiro read() Método para procurar uma string num ficheiro em Python
  3. Utilize o método find para procurar uma string num ficheiro em Python
  4. Utilize o módulo mmap para procurar uma string num ficheiro em Python
Python Encontrar Cordel em Ficheiro

O tutorial explica como encontrar uma string específica num ficheiro de texto em Python.

Utilize o ficheiro readlines() Método para encontrar uma string num ficheiro em Python

O método Pyton readlines() devolve o conteúdo do ficheiro dividido para uma lista pela nova linha. Podemos utilizar o laço for para iterar através da lista e utilizar o operador in para verificar se a string está na linha em cada iteração.

Se a string for encontrada na linha, devolve True e quebra o laço. Se a string não for encontrada após a iteração de todas as linhas, retorna False eventualmente.

Um código de exemplo para esta abordagem é dado abaixo:

file = open("temp.txt", "w") file.write("blabla is nothing.") file.close()   def check_string():  with open("temp.txt") as temp_f:  datafile = temp_f.readlines()  for line in datafile:  if "blabla" in line:  return True # The string is found  return False # The string does not exist in the file   if check_string():  print("True") else:  print("False") 

Resultado:

True 

Utilize o ficheiro read() Método para procurar uma string num ficheiro em Python

O método read() devolve o conteúdo do ficheiro como uma string completa. Depois podemos utilizar o operador in para verificar se a string está na string devolvida.

Um código de exemplo é dado abaixo:

file = open("temp.txt", "w") file.write("blabla is nothing.") file.close()   with open("temp.txt") as f:  if "blabla" in f.read():  print("True") 

Resultado:

True 

Utilize o método find para procurar uma string num ficheiro em Python

Um método find simples pode ser utilizado com o método read()para encontrar a string no ficheiro. O método find é passado a string necessária. Retorna 0 se a string for encontrada e -1 se a string não for encontrada.

Um código de exemplo é dado abaixo.

file = open("temp.txt", "w") file.write("blabla is nothing.") file.close()  print(open("temp.txt", "r").read().find("blablAa")) 

Resultado:

-1 

Utilize o módulo mmap para procurar uma string num ficheiro em Python

O módulo mmap também pode ser utilizado para encontrar uma string num ficheiro em Python e pode melhorar o desempenho se o tamanho do ficheiro for relativamente grande. O método mmap.mmap() cria um objecto semelhante a uma string em Python 2 que verifica apenas o ficheiro implícito e não lê o ficheiro inteiro.

Um código de exemplo em Python 2 é dado abaixo:

# python 2  import mmap  file = open("temp.txt", "w") file.write("blabla is nothing.") file.close()  with open("temp.txt") as f:  s = mmap.mmap(f.fileno(), 0, access=mmap.ACCESS_READ)  if s.find("blabla") != -1:  print("True") 

Resultado:

True 

Contudo, em Python3 e superior, o mmap não se comporta como o objecto semelhante a uma string, mas cria um objecto bytearray. Assim, o método find procura por bytes e não por strings.

Um código de exemplo para isto é dado abaixo:

import mmap  file = open("temp.txt", "w") file.write("blabla is nothing.") file.close()  with open("temp.txt") as f:  s = mmap.mmap(f.fileno(), 0, access=mmap.ACCESS_READ)  if s.find(b"blabla") != -1:  print("True") 

Resultado:

True 
Está gostando dos nossos tutoriais? Inscreva-se no DelftStack no YouTube para nos apoiar na criação de mais vídeos tutoriais de alta qualidade. Inscrever-se
Syed Moiz Haider avatar Syed Moiz Haider avatar

Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.

LinkedIn

Artigo relacionado - Python String

Artigo relacionado - Python File