Zahlen aus einer Textdatei extrahieren

PythonPythonBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Projekt lernst du, wie du Zahlen größer als 5 aus einer Textdatei extrahierst und ausgibst.

👀 Vorschau

$ python FindDigits.py
876

🎯 Aufgaben

In diesem Projekt wirst du lernen:

  • Wie du eine Textdatei öffnest und deren Inhalt liest
  • Wie du spezifische Zahlen aus einem String extrahierst
  • Wie du die extrahierten Zahlen zu einem neuen String zusammenfügst
  • Wie du die extrahierten Zahlen ausgibst

🏆 Errungenschaften

Nach Abschluss dieses Projekts wirst du in der Lage sein:

  • Strings zu manipulieren und spezifische Daten daraus zu extrahieren
  • Ein Python-Skript zu schreiben, um eine einfache Datenverarbeitungstask zu automatisieren
  • Dein Wissen über Dateihandling und Stringoperationen in Python anzuwenden

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{{"Zahlen aus einer Textdatei extrahieren"}} python/conditional_statements -.-> lab-302772{{"Zahlen aus einer Textdatei extrahieren"}} python/for_loops -.-> lab-302772{{"Zahlen aus einer Textdatei extrahieren"}} python/file_opening_closing -.-> lab-302772{{"Zahlen aus einer Textdatei extrahieren"}} python/file_reading_writing -.-> lab-302772{{"Zahlen aus einer Textdatei extrahieren"}} python/with_statement -.-> lab-302772{{"Zahlen aus einer Textdatei extrahieren"}} end

Öffnen der Datei String.txt und Lesen des Strings

In diesem Schritt lernst du, wie du die Datei String.txt öffnest und den String liest.

  1. Öffne deinen Texteditor und erstelle in dem Verzeichnis /home/labex/project eine neue Datei namens FindDigits.py.
cd /home/labex/project
touch FindDigits.py
  1. In der Datei FindDigits.py verwende die open-Funktion, um die Datei String.txt im selben Verzeichnis zu öffnen und den String zu lesen.
## Öffne die Datei String.txt im selben Verzeichnis und lies den String
with open("String.txt", "r") as f:
    string = f.read()

Die with-Anweisung wird verwendet, um sicherzustellen, dass die Datei nach dem Lesevorgang ordnungsgemäß geschlossen wird, auch wenn eine Ausnahme ausgelöst wird.

Extrahiere die Zahlen größer als 5 aus dem String

In diesem Schritt lernst du, wie du die Zahlen größer als 5 aus dem String extrahierst und zu einem neuen String zusammenfügst.

  1. Initialisiere einen leeren String, um die extrahierten Zahlen zu speichern.
## Initialisiere einen leeren String, um die extrahierten Zahlen zu speichern
numbers = ""
  1. Gehe durch jedes Zeichen im String und überprüfe, ob es eine Ziffer ist und größer als 5. Wenn ja, hänge es an den String numbers an.
## Gehe durch jedes Zeichen im String
for char in string:
    ## Wenn das Zeichen eine Ziffer ist und größer als 5
    if char.isdigit() and int(char) > 5:
        ## hänge es an den numbers-String an
        numbers += char

Die isdigit()-Methode überprüft, ob das Zeichen eine Ziffer ist, und int(char) konvertiert das Zeichen in eine Ganzzahl, um zu überprüfen, ob es größer als 5 ist.

Drucke die extrahierten Zahlen

In diesem Schritt lernst du, wie du die extrahierten Zahlen ausgibst.

  1. Drucke den String numbers.
## Drucke den numbers-String aus
print(numbers)

Die endgültige Datei FindDigits.py sollte so aussehen:

## Öffne die Datei String.txt im selben Verzeichnis und lies den String
with open("String.txt", "r") as f:
    string = f.read()

## Initialisiere einen leeren String, um die extrahierten Zahlen zu speichern
numbers = ""

## Gehe durch jedes Zeichen im String
for char in string:
    ## Wenn das Zeichen eine Ziffer ist und größer als 5
    if char.isdigit() and int(char) > 5:
        ## hänge es an den numbers-String an
        numbers += char

## Drucke den numbers-String aus
print(numbers)

Du hast jetzt das Projekt abgeschlossen. Führe die Datei FindDigits.py aus, um das Ergebnis zu sehen.

$ python FindDigits.py
876
✨ Lösung prüfen und üben

Zusammenfassung

Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Labs absolvieren, um deine Fähigkeiten zu verbessern.