テキストファイルから数字を抽出する

PythonBeginner
オンラインで実践に進む

はじめに

このプロジェクトでは、テキストファイルから 5 より大きい数字を抽出して表示する方法を学びます。

👀 プレビュー

$ python FindDigits.py
876

🎯 タスク

このプロジェクトでは、以下のことを学びます。

  • テキストファイルを開いてその内容を読む方法
  • 文字列から特定の数字を抽出する方法
  • 抽出した数字を新しい文字列に連結する方法
  • 抽出した数字を表示する方法

🏆 成果

このプロジェクトを完了すると、以下のことができるようになります。

  • 文字列を操作してそこから特定のデータを抽出する
  • 簡単なデータ処理タスクを自動化する Python スクリプトを作成する
  • Python のファイル操作と文字列操作の知識を適用する

String.txt ファイルを開いて文字列を読む

このステップでは、String.txtファイルを開いて文字列を読む方法を学びます。

  1. テキストエディタを開き、/home/labex/projectディレクトリに新しいファイルFindDigits.pyを作成します。
cd /home/labex/project
touch FindDigits.py
  1. FindDigits.pyファイルで、open関数を使って同じディレクトリにあるString.txtファイルを開き、文字列を読み取ります。
## 同じディレクトリにある String.txt ファイルを開いて文字列を読む
with open("String.txt", "r") as f:
    string = f.read()

with文は、読み取りが完了した後にファイルが適切に閉じられることを保証するために使用されます。たとえ例外が発生した場合でもです。

文字列から 5 より大きい数字を抽出する

このステップでは、文字列から 5 より大きい数字を抽出して新しい文字列に連結する方法を学びます。

  1. 抽出した数字を格納するための空の文字列を初期化します。
## 抽出した数字を格納するための空の文字列を初期化する
numbers = ""
  1. 文字列の各文字をループして、それが数字で 5 より大きいかどうかを確認します。そうであれば、それをnumbers文字列に追加します。
## 文字列の各文字をループする
for char in string:
    ## 文字が数字で 5 より大きい場合
    if char.isdigit() and int(char) > 5:
        ## それを numbers 文字列に追加する
        numbers += char

isdigit()メソッドは文字が数字であるかどうかを確認し、int(char)は文字を整数に変換して 5 より大きいかどうかを確認します。

抽出した数字を表示する

このステップでは、抽出した数字を表示する方法を学びます。

  1. numbers文字列を表示します。
## numbers 文字列を表示する
print(numbers)

完成したFindDigits.pyファイルは以下のようになります。

## 同じディレクトリにある String.txt ファイルを開いて文字列を読む
with open("String.txt", "r") as f:
    string = f.read()

## 抽出した数字を格納するための空の文字列を初期化する
numbers = ""

## 文字列の各文字をループする
for char in string:
    ## 文字が数字で 5 より大きい場合
    if char.isdigit() and int(char) > 5:
        ## それを numbers 文字列に追加する
        numbers += char

## numbers 文字列を表示する
print(numbers)

これでプロジェクトが完了しました。FindDigits.pyファイルを実行して出力を確認してください。

$ python FindDigits.py
876

まとめ

おめでとうございます!このプロジェクトを完了しました。実力を向上させるために、LabEx でさらに多くの実験を行って練習してください。

✨ 解答を確認して練習✨ 解答を確認して練習✨ 解答を確認して練習