Python encuentra la cadena en el archivo
-
Utiliza el método del archivo
readlines()
para encontrar una cadena en un archivo en Python -
Usa el método del archivo
read()
para buscar una cadena en un archivo en Python -
Use el método
find
para buscar una cadena en un archivo en Python -
Use el módulo
mmap
para buscar una cadena en un archivo en Python
El tutorial explica cómo encontrar una cadena específica en un archivo de texto en Python.
Utiliza el método del archivo readlines()
para encontrar una cadena en un archivo en Python
El método readlines()
del archivo de Pyton devuelve el contenido del archivo dividido en una lista por la nueva línea. Podemos usar el bucle for
para iterar a través de la lista y usar el operador in
para comprobar si la cadena está en la línea en cada iteración.
Si la cadena se encuentra en la línea, devuelve True
y rompe el bucle. Si la cadena no se encuentra después de iterar todas las líneas, devuelve False
eventualmente.
Un ejemplo de código para este enfoque se da a continuación:
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
Usa el método del archivo read()
para buscar una cadena en un archivo en Python
El método read()
devuelve el contenido del archivo como una cadena completa. Entonces podemos usar el operador in
para comprobar si la cadena está en la cadena devuelta.
A continuación se da un código de ejemplo:
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
Use el método find
para buscar una cadena en un archivo en Python
Se puede usar un simple método find
con el método read()
para encontrar la cadena en el archivo. Al método find
se le pasa la cadena requerida. Devuelve 0
si se encuentra la cadena y -1
si no se encuentra la cadena.
A continuación se da un código de ejemplo.
file = open("temp.txt", "w")
file.write("blabla is nothing.")
file.close()
print(open("temp.txt", "r").read().find("blablAa"))
Resultado:
-1
Use el módulo mmap
para buscar una cadena en un archivo en Python
El módulo mmap
también puede ser usado para encontrar una cadena en un archivo en Python y puede mejorar el rendimiento si el tamaño del archivo es relativamente grande. El método mmap.mmap()
crea un objeto similar a una cadena en Python 2 que comprueba sólo el archivo implícito y no lee el archivo completo.
A continuación se muestra un código de ejemplo en Python 2:
# 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
Sin embargo, en Python 3 y superiores, mmap
no se comporta como el objeto de tipo cadena sino que crea un objeto de tipo bytearray
. Así que el método find
busca bytes y no cadenas.
Un ejemplo de código para esto se da a continuación:
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
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.
LinkedInArtículo relacionado - Python String
- Eliminar comas de cadena en Python
- Cómo comprobar si una cadena está vacía de forma ptónica
- Convertir una cadena en nombre de variable en Python
- Cómo eliminar los espacios en blanco de una cadena en Python
- Cómo extraer números de una cadena en Python
- Cómo convertir una cadena a datetime en Python