Pythonでtype() 関数を使用し変数が関数かどうかを検出する

スポンサーリンク

Pythonでtype() 関数を使用し変数が関数かどうかを検出してみます。

type()関数は、指定されたオブジェクトの型を返します。なお、オブジェクトには関数も対象となります。

■Python

Google Colaboratory(Google Colab),2022年11月25日現在、Python 3.7.15を使用している。

■type()関数を使用し変数が関数かどうかを検出する

では、type()関数を使用し変数が関数かどうかを検出するスクリプトを書いていきます。

■コード

def test_a(a, b):
    return a+b
  
print(type(test_a))

value_1 = 123

print(type(value_1))

まずは、def文を用いてtest_aという関数を定義する。関数の括弧内には引数,パラメータとしてa,bを設定します。設定後、関数が呼び出された時に実行する処理をdef文内に記述します。今回は定義した関数に渡された引数,パラメータを算術演算子を用いて加算(引き算,”+”(プラス))を行い、演算された結果をreturnとして返すものです。

関数を定義後、type()を用います。括弧内には引数,パラメータとして今回定義した関数名であるtest_aを渡します。これで変数内のオブジェクト(今回は変数)の型が返されます。返された型は変数に格納されます。その格納された型をprint()で出力します。

次に今回は比較としてvalue_1という変数を定義し、その中に「123」という数値を格納します。格納後、type()を用います。括弧内には引数,パラメータとしてvalue_1変数を渡します。これで変数内のオブジェクト(この場合は整数)の型が返されます。返された型は変数に格納されます。その格納された型をprint()で出力します。

■実行・検証

このセルを保存し、Google Colaboratory上で、セルを実行してみます。

実行してみると、type()の括弧内に今回定義した関数を格納した変数を渡した方は、「<class ‘function’>」と出力され、変数が関数であることが検出されました。一方で、数値を格納した変数は「<class ‘int’>」と出力され、変数が整数であることが検出されました。

コメント

タイトルとURLをコピーしました