Cómo encontrar una cadena en un archivo de texto usando Python

La mayoría de los desarrolladores están de acuerdo en que Python es uno de los lenguajes de programación más influyentes y populares en la actualidad. Python es un lenguaje de programación dinámico, de alto nivel, de código abierto e interpretado.
Permite la programación orientada a objetos así como la programación orientada a procedimientos. Muchos estudiantes de desarrollo comienzan su programación con Python.
Cadenas en Python
En Python, las cadenas son str. Las cadenas de Python son cadenas. Las cadenas de Python son inmutables, lo que significa que no se pueden cambiar ni modificar una vez creadas.
Cuando desee cambiar o modificar una cadena, esto no se puede hacer con una cadena existente; necesitas crear uno nuevo. Este artículo lo ayudará a aprender cómo encontrar cadenas en archivos de texto usando el lenguaje de programación Python.
Primero, se supone que ha instalado la última versión de Python (Python 3.9.1) en su máquina y tiene un IDE/escritor de código.
Antes de pasar al siguiente paso, ¡debe saber qué es un archivo!
Un archivo es un conjunto infectado de bytes que contiene datos. Estos datos se presentan en un formato específico. Archivos de texto, imágenes, ejecutables son ejemplos de diferentes tipos de archivos.
Cómo encontrar una cadena en un archivo de texto usando Python
Dividí las tareas de dos maneras diferentes. Primero, aprenderá cómo encontrar una cadena específica de un archivo de texto, luego le mostraré cómo encontrar varias cadenas y sus números de línea correspondientes.
1. Encuentra una cadena de un archivo de texto
def check(my_file, string_search): # Opens my_file in read only mode with open(my_file, 'r') as read: # Read all the line in the file one by one for line in read: # Checki every lines if it contains the desired string if string_search in line: return True return False
En el ejemplo anterior, la función de verificación tiene dos parámetros, la ruta del archivo y la cadena deseada. Luego abre el archivo de texto llamado my_file y escanea cada línea.
Devuelve inmediatamente «Verdadero» si la fila contiene la cadena deseada y «Falso» si ninguna fila contiene la cadena deseada.
Ahora suponga que tiene un archivo de texto llamado demo.text con las siguientes líneas de texto y está buscando la cadena «Adam».
This is a demo line I am looking for a string That contains Adam Thank you!
Suponga que necesita verificar si este archivo contiene la cadena «Adam». Para ello, escribamos el siguiente código.
if check('demo.txt', 'Adam'): print('True') else: print('Sorry String not found in your given file').
Con este código obtendrá el resultado «Verdadero» porque tiene la cadena «Adam» en su archivo de texto.
2. Encuentre las cadenas de filas múltiples disponibles y los números de fila
Veamos diferentes scripts que pueden ser útiles al intentar encontrar cadenas en archivos de texto.
def search_string(file_name, string_search): # Searches for a string that available in multiple lines along with the line numbers x = 0 # Line number y = [] # List of serched result # Opens the file in read only mode with open(my_file, 'r') as read: for line in read: x += 1 if string_search in line: y.append((x, line.rstrip())) return y
Tengamos una idea del algoritmo del programa de Python anterior. Primero, este programa también acepta dos parámetros, la ruta del archivo y la cadena deseada.
Más tarde creó una lista vacía de tuplas y. Luego vuelve a abrir el archivo en modo de solo lectura y escanea cada línea para obtener la cadena deseada.
Si encuentra una cadena en una fila, crea una tupla de filas y números de fila, la agrega a una lista de tuplas y devuelve una lista de tuplas. Suponga que su archivo de texto tiene las siguientes filas
I am Adam Demo line 1 Demo line 2 Adam writes the code Thank you!
Puede obtener todas las filas con el número de fila para una cadena determinada «Adam» escribiendo el código a continuación.
get_lines = search_string('demo.txt', 'Adam') print('Lines with the String : ', len(get_lines)) for elem in get_lines: print('Line Number=", elem[0], " : Line=", elem[1])
tienes que tomar uno Salida como esto:
Lines with the String: 2 Line Number = 1 : Line = I am Adam Line Number = 4 : Line = Adam writes the code
en conclusión
Como desarrollador de Python, las habilidades con los archivos son esenciales. Los desarrolladores a menudo necesitan tener acceso y manipular datos en archivos, ya sea que estén leyendo o escribiendo archivos.
Espero que este artículo te haya ayudado a encontrar cadenas en archivos de texto usando Python.
¡Buena codificación!

¡Hola a todos! Este soy yo, Marcel, también conocido como Masha. ¡Obtengo ingresos de tiempo completo en línea y en MaschiTuts y estoy emocionado de compartir con ustedes cómo me mantengo en la cima! Dirijo varios blogs y sitios web lucrativos y me gusta hablar sobre estos proyectos cuando tengo la oportunidad. Hago esto con todo mi corazón. De hecho, el momento en que dejé de trabajar de 8 a 5 y me encontré en un negocio en línea como emprendedor digital fue probablemente una de las mejores decisiones que he tomado en mi vida. ¡Quiero estar seguro de que tú también irás por este camino! Que nadie te diga que es imposible. El cielo es el límite, de verdad… ¡solo si crees en él! Y todo comienza aquí… ¡en Maschiuts!