ユーザー入力情報の抽出

PythonPythonBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

このプロジェクトでは、Python スクリプトと正規表現を使ってユーザー入力から整数を抽出する方法を学びます。このプロジェクトは、正規表現の基本と、実際のプログラミングタスクでの適用方法を理解するのに役立ちます。

👀 プレビュー

~/project/$ python find_int.py
a1b2c3d4
1 2 3 4
~/project/$ python find_int.py
1 2 3 4
1 2 3 4
~/project/$ python find_int.py
12 3ad5
12 3 5

🎯 タスク

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

  • ユーザー入力を処理する Python スクリプトを作成する方法
  • 文字列を検索して整数を抽出するための正規表現の使い方
  • 抽出した整数を処理して出力するためのフォーマット方法

🏆 成果

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

  • ユーザー入力から数値データを抽出できる Python スクリプトを書く
  • 正規表現の基本と、Python での適用方法を理解する
  • Python プログラミングと正規表現技術を組み合わせて実際の問題を解決する能力を示す

Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/FunctionsGroup(["Functions"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python(("Python")) -.-> python/AdvancedTopicsGroup(["Advanced Topics"]) python/BasicConceptsGroup -.-> python/variables_data_types("Variables and Data Types") python/BasicConceptsGroup -.-> python/strings("Strings") python/FunctionsGroup -.-> python/function_definition("Function Definition") python/FunctionsGroup -.-> python/arguments_return("Arguments and Return Values") python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") python/AdvancedTopicsGroup -.-> python/regular_expressions("Regular Expressions") subgraph Lab Skills python/variables_data_types -.-> lab-302725{{"ユーザー入力情報の抽出"}} python/strings -.-> lab-302725{{"ユーザー入力情報の抽出"}} python/function_definition -.-> lab-302725{{"ユーザー入力情報の抽出"}} python/arguments_return -.-> lab-302725{{"ユーザー入力情報の抽出"}} python/importing_modules -.-> lab-302725{{"ユーザー入力情報の抽出"}} python/regular_expressions -.-> lab-302725{{"ユーザー入力情報の抽出"}} end

Python スクリプトをセットアップする

このステップでは、新しい Python スクリプトファイルを作成し、必要なモジュールをインポートします。

  1. テキストエディタを開き、/home/labex/project ディレクトリに find_int.py という名前の新しいファイルを作成します。
  2. ファイルの先頭で、re(正規表現)モジュールをインポートします。このモジュールは、ユーザー入力から整数を抽出するために使用されます。
import re

整数を抽出する関数を定義する

このステップでは、ユーザー入力を受け取り、そこからすべての整数を抽出する関数を作成します。

  1. extract_integers という名前の関数を定義し、単一の引数 user_input を取ります。
def extract_integers(user_input):
    ## 次のステップでコードを追加します
    pass

整数抽出ロジックを実装する

このステップでは、正規表現を使ってユーザー入力から整数を抽出するロジックを実装します。

  1. extract_integers 関数の中で、re.findall() メソッドを使って、user_input 文字列の中のすべての数字列(整数)を見つけます。
def extract_integers(user_input):
    integers = re.findall(r"\d+", user_input)
    return " ".join(integers)

r"\d+" の正規表現パターンは、1 つ以上の数字(0 - 9)を一致させます。re.findall() 関数は、一致したすべての整数のリストを返します。

  1. その後、関数は抽出された整数を空白区切りの文字列に結合して返します。

ユーザー入力を処理して結果を表示する

この最後のステップでは、ユーザーに入力を促し、extract_integers 関数を呼び出して結果を表示します。

  1. find_int.py ファイルの末尾に次のコードを追加します。
if __name__ == "__main__":
    user_input = input()
    result = extract_integers(user_input)
    print(result)

このコードは、スクリプトが直接実行されているかどうか(モジュールとしてインポートされていないかどうか)を確認し、その後ユーザーに入力を促し、ユーザーの入力を使って extract_integers 関数を呼び出し、結果として得られる空白区切りの整数の文字列を表示します。

これで、あなたの find_int.py スクリプトは完成です。スクリプトを実行して、さまざまなユーザー入力でテストすることができます。

~/project$ python find_int.py
a1b2c3d4
1 2 3 4
~/project$ python find_int.py
1 2 3 4
1 2 3 4
~/project$ python find_int.py
12 3ad5
12 3 5

おめでとうございます!Python スクリプトと正規表現を使ってユーザー入力から整数を抽出するプロジェクトを完了しました。

✨ 解答を確認して練習

まとめ

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