読み込み中...

Python初心者が数値判定をマスターする7つのステップ

Pythonの数値判定を学ぶ初心者がパソコンの画面を見つめているイメージ Python
この記事は約6分で読めます。

【サイト内のコードはご自由に個人利用・商用利用いただけます】

この記事では、プログラムの基礎知識を前提に話を進めています。

説明のためのコードや、サンプルコードもありますので、もちろん初心者でも理解できるように表現してあります。

本記事のサンプルコードを活用して機能追加、目的を達成できるように作ってありますので、是非ご活用ください。

※この記事は、一般的にプロフェッショナルの指標とされる『実務経験10,000時間以上』を満たす現役のプログラマチームによって監修されています。

※Japanシーモアは、常に解説内容のわかりやすさや記事の品質に注力しております。不具合、分かりにくい説明や不適切な表現、動かないコードなど気になることがございましたら、記事の品質向上の為にお問い合わせフォームにてご共有いただけますと幸いです。
(送信された情報は、プライバシーポリシーのもと、厳正に取扱い、処分させていただきます。)

はじめに

Pythonを学び始める際、初心者がまず理解しなければならないのが数値の扱い方です。

本記事では、Pythonで数値を扱う方法を具体的なサンプルコードを用いて、7つのステップでわかりやすく解説します。

全てのステップを終えれば、初心者でもPythonでの数値判定をマスターできるでしょう。

●Pythonの数値とは

Pythonで扱うことができる数値には、主に整数、小数、そして複素数の3種類があります。

○整数と小数

Pythonで整数を表現する際は、特に何も記述しない普通の数値を使用します。

例えば、「5」や「-3」などです。

一方、小数を表現するには小数点を使用します。例えば、「5.5」や「-0.1」のように記述します。

○複素数

Pythonでは複素数も扱うことが可能です。

複素数は「3+4j」のように実部と虚部を合わせた形で記述します。

「j」の部分が虚部を表しています。

●Pythonでの数値の判定方法

Pythonで数値が整数か小数か複素数かを判定する方法を説明します。

○整数かどうかを判定する

Pythonでは、組み込み関数の「isinstance」を使って、数値が整数かどうかを判定することができます。

○小数かどうかを判定する

同様に、小数かどうかを判定するには、「isinstance」関数を使いますが、この時には第二引数に「float」を指定します。

○複素数かどうかを判定する

複素数かどうかの判定も、「isinstance」関数を使用します。

この場合は、第二引数に「complex」を指定します。

●数値判定のサンプルコード

次に、具体的なサンプルコードを用いて、数値判定の方法を説明します。

○サンプルコード1:整数の判定

次のコードは、「isinstance」関数を使用して、数値が整数かどうかを判定する例です。

この例では「5」という数値が整数であるかを判定しています。

num = 5
if isinstance(num, int):
    print("整数です")
else:
    print("整数ではありません")

このコードを実行すると、「整数です」と表示されます。

これは、「5」が整数であるためです。

○サンプルコード2:小数の判定

次に、数値が小数であるかどうかを判定するコードの例を見てみましょう。

num = 5.5
if isinstance(num, float):
    print("小数です")
else:
    print("小数ではありません")

このコードを実行すると、「小数です」と表示されます。

これは、「5.5」が小数であるためです。

○サンプルコード3:複素数の判定

最後に、数値が複素数であるかどうかを判定するコードの例を見てみましょう。

num = 3+4j
if isinstance(num, complex):
    print("複素数です")
else:
    print("複素数ではありません")

このコードを実行すると、「複素数です」と表示されます。

これは、「3+4j」が複素数であるためです。

このように、「isinstance」関数を使えば、Pythonで数値が整数、小数、複素数のどれであるかを判定することができます。

●数値判定の応用例とサンプルコード

次に、数値判定の応用例とそれに対応するサンプルコードを見てみましょう。

○応用例1:数値データのリストから整数を抽出

次のサンプルコードは、リストに含まれる数値データの中から整数だけを抽出する例です。

ここでは「filter」関数と「isinstance」関数を組み合わせて使用しています。

data = [1, 2.2, 3, 4.4, 5]
integers = list(filter(lambda x: isinstance(x, int), data))
print(integers)

このコードを実行すると、「[1, 3, 5]」と表示されます。

これは、リストに含まれる「1」「3」「5」が整数であるためです。

○応用例2:数値データのリストから小数を抽出

次に、リストに含まれる数値データの中から小数だけを抽出する例を見てみましょう。

data = [1, 2.2, 3, 4.4, 5]
floats = list(filter(lambda x: isinstance(x, float), data))
print(floats)

このコードを実行すると、「[2.2, 4.4]」と表示されます。

これは、リストに含まれる「2.2」「4.4」が小数であるためです。

○応用例3:数値データのリストから複素数を抽出

最後に、リストに含まれる数値データの中から複素数だけを抽出する例を見てみましょう。

data = [1, 2.2, 3+4j, 4.4, 5]
complex_nums = list(filter(lambda x: isinstance(x, complex), data))
print(complex_nums)

このコードを実行すると、「[3+4j]」と表示されます。

これは、リストに含まれる「3+4j」が複素数であるためです。

●注意点と対策

数値判定を行う際の注意点とその対策について解説します。

○数値以外のデータ型に対する判定

「isinstance」関数は、第一引数に指定された変数が、第二引数で指定された型であるかどうかを判定します。

したがって、第一引数に数値以外のデータ型(例えば文字列やリストなど)が指定された場合、結果は必ず「False」となります。

数値以外のデータ型に対してもエラーを出さずに適切に判定を行いたい場合は、適切なエラーハンドリングが必要になります。

○エラーハンドリングの重要性

Pythonでは、エラーハンドリングを行うための「try-except」構文が提供されています。

次のサンプルコードは、「try-except」構文を使って、数値以外のデータ型に対する判定をエラーを出さずに行う例です。

data = "文字列"
try:
    if isinstance(data, int):
        print("整数です")
    elif isinstance(data, float):
        print("小数です")
    elif isinstance(data, complex):
        print("複素数です")
    else:
        print("数値ではありません")
except TypeError:
    print("TypeErrorが発生しました。数値を入力してください。")

このコードを実行すると、「数値ではありません」と表示されます。

この例では、「data」に文字列を指定していますが、「try-except」構文によりエラーを出さずに適切に判定を行うことができています。

このように、「try-except」構文を用いることで、予期せぬエラーからプログラムを守り、より堅牢なコードを作成することができます。

まとめ

Pythonで数値判定を行う方法について、具体的なサンプルコードとともに解説しました。

Pythonで数値を扱う上で非常に基本的な技術であり、これをマスターすることでより複雑なプログラムを書くための土台となります。

また、「isinstance」関数を使った数値判定は、リスト内のデータの型をフィルタリングする際など、多くの応用シーンがあります。

そして、数値以外のデータ型に対する適切なエラーハンドリングを行うことで、プログラムの堅牢性を高めることができます。

本記事が、Python初心者が数値判定をマスターする一助となれば幸いです。