Pythonでtype関数を利用して型判定する方法を現役エンジニアが解説【初心者向け】

初心者向けにPythonでtype関数を利用して型判定する方法について現役エンジニアが解説しています。type関数とは、型を確認するための組み込み関数です。型とはデータ型のことで整数、浮動小数点、文字列、真偽値があります。2つのデータの型を同じかどうか確認するisinstance関数もあります。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

Pythonでtype関数を利用して型判定する方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して、初心者向けに解説します。

Pythonについてそもそもよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、Python講座の内容をもとに紹介しています。

 

田島悠介

今回は、Pythonに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Pythonでtype関数を利用して型判定する方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

  1. 型とは
  2. type関数とは
  3. isinstance関数とtype関数の違い
  4. type関数の使い方
  5. 実際に書いてみよう
  6. まとめ

 

型とは

型とは、簡単に言うと「データの種類」です。具体的な例を挙げると、例えば以下のような型があります。

  • 整数→int型
  • 浮動小数点数→float型
  • 文字列→str型
  • 真偽値→bool型

例えは”hello”という文字列であればstr型、10という数値であればint型といった具合です。

もちろん他にもたくさんの型が存在しますが、あまりたくさん挙げると混乱してしまうと思いますので、最初のうちは上の4種類だけでも覚えておくと良いでしょう。

[PR] Pythonで挫折しない学習方法を動画で公開中

type関数とは

type関数とは、型を確認するための組み込み関数です。使い方は以下のとおりです。

type(型を確認したい変数)

 

isinstance関数とtype関数の違い

type関数と似た関数の1つにisinstance関数があります。こちらも組み込み関数です。isintance関数は、「第一引数で指定した変数が第二引数で指定した型と一致するかどうかをbool値で返す関数」です。

isinstance(型を確認したい変数, 型)

 

type関数の使い方

では、type関数を用いてどのように型判定をするのでしょうか。結論としては、if文とtype関数を組み合わせていきます。

例えば以下のコードでは、変数aに入っているデータがint型であれば「intだよ。」というメッセージを表示し、そうでなければ表示しないといった単純な判定をしています。

【実行内容】

a = 10

if type(a) == int:

   print("intだよ。")

【実行結果】

intだよ。

【実行内容】

a = "orange"

if type(a) == int:

   print("intだよ。")

【実行結果】

なし

前者では変数aに格納されているのはint型なのでメッセージが表示されていますが、後者ではstr型なので表示がありません。

実際に書いてみよう

それでは次はisinstance関数についても実際にコードを書いてみましょう。isinstance関数を使えば、先ほど実装したコードは以下のように書き換えられます。

【実行内容】

a = 10

if isinstance(a, int):

   print("intだよ。")

【実行結果】

intだよ。

【実行内容】

a = "orange"

if isinstance(a, int):

    print("intだよ")

【実行結果】

なし

先ほどよりも少しスッキリした印象です。

まとめ

この記事ではPythonでtype関数を利用して型判定をする方法についてご紹介しました。

type関数やisinstance関数でデータ型を確認しながらコードを書いていくのは、エンジニアにとって非常に重要です。変数の中身を把握しながらミスのないプログラムを書くようにしましょう。

監修してくれたメンター

柴山真沙希(しばやままさき)

大手IT企業などでエンジニアとして2年ほど勤務した後、個人事業主としてプログラミングスクール「エンペサール」を経営。子供から大人まで幅広い層を対象にプログラミングを教えている。

得意言語はPython, HTML, CSSで、機械学習やデータ分析、スクレイピングなどが得意。サッカー観戦や読書が趣味である。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間で、Pythonを使った人工知能(AI)や機械学習の基礎を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。