Extraer números de un archivo de texto

PythonPythonBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este proyecto, aprenderás a extraer los números mayores que 5 de un archivo de texto y a imprimirlos.

👀 Vista previa

$ python FindDigits.py
876

🎯 Tareas

En este proyecto, aprenderás:

  • Cómo abrir un archivo de texto y leer su contenido
  • Cómo extraer números específicos de una cadena
  • Cómo concatenar los números extraídos en una nueva cadena
  • Cómo imprimir los números extraídos

🏆 Logros

Después de completar este proyecto, serás capaz de:

  • Manipular cadenas y extraer datos específicos de ellas
  • Escribir un script de Python para automatizar una tarea simple de procesamiento de datos
  • Aplicar tus conocimientos de manipulación de archivos y operaciones con cadenas en Python

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/FileHandlingGroup(["File Handling"]) python/BasicConceptsGroup -.-> python/strings("Strings") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/ControlFlowGroup -.-> python/for_loops("For Loops") python/FileHandlingGroup -.-> python/file_opening_closing("Opening and Closing Files") python/FileHandlingGroup -.-> python/file_reading_writing("Reading and Writing Files") python/FileHandlingGroup -.-> python/with_statement("Using with Statement") subgraph Lab Skills python/strings -.-> lab-302772{{"Extraer números de un archivo de texto"}} python/conditional_statements -.-> lab-302772{{"Extraer números de un archivo de texto"}} python/for_loops -.-> lab-302772{{"Extraer números de un archivo de texto"}} python/file_opening_closing -.-> lab-302772{{"Extraer números de un archivo de texto"}} python/file_reading_writing -.-> lab-302772{{"Extraer números de un archivo de texto"}} python/with_statement -.-> lab-302772{{"Extraer números de un archivo de texto"}} end

Abra el archivo String.txt y lea la cadena

En este paso, aprenderá a abrir el archivo String.txt y leer la cadena.

  1. Abra su editor de texto y cree un nuevo archivo llamado FindDigits.py en el directorio /home/labex/project.
cd /home/labex/project
touch FindDigits.py
  1. En el archivo FindDigits.py, use la función open para abrir el archivo String.txt en el mismo directorio y leer la cadena.
## Abra el archivo String.txt en el mismo directorio y lea la cadena
with open("String.txt", "r") as f:
    string = f.read()

La declaración with se utiliza para garantizar que el archivo se cierre correctamente después de que se complete la lectura, incluso si se produce una excepción.

Extraiga los números mayores que 5 de la cadena

En este paso, aprenderá a extraer los números mayores que 5 de la cadena y a concatenarlos en una nueva cadena.

  1. Inicialice una cadena vacía para almacenar los números extraídos.
## Inicialice una cadena vacía para almacenar los números extraídos
numbers = ""
  1. Recorra cada carácter de la cadena y compruebe si es un dígito y mayor que 5. Si es así, agréguelo a la cadena numbers.
## Recorra cada carácter de la cadena
for char in string:
    ## Si el carácter es un dígito y mayor que 5
    if char.isdigit() and int(char) > 5:
        ## Agreguelo a la cadena numbers
        numbers += char

El método isdigit() comprueba si el carácter es un dígito, y int(char) convierte el carácter a un entero para comprobar si es mayor que 5.

Imprima los números extraídos

En este paso, aprenderá a imprimir los números extraídos.

  1. Imprima la cadena numbers.
## Imprima la cadena numbers
print(numbers)

El archivo FindDigits.py final debería verse así:

## Abra el archivo String.txt en el mismo directorio y lea la cadena
with open("String.txt", "r") as f:
    string = f.read()

## Inicialice una cadena vacía para almacenar los números extraídos
numbers = ""

## Recorra cada carácter de la cadena
for char in string:
    ## Si el carácter es un dígito y mayor que 5
    if char.isdigit() and int(char) > 5:
        ## Agreguelo a la cadena numbers
        numbers += char

## Imprima la cadena numbers
print(numbers)

Ya ha completado el proyecto. Ejecute el archivo FindDigits.py para ver la salida.

$ python FindDigits.py
876
✨ Revisar Solución y Practicar

Resumen

¡Felicidades! Has completado este proyecto. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.