はじめに|Pythonの組み込み関数ってなに?
Pythonを使っていると、print()やlen()といった関数をよく見かけますよね。これらは**「組み込み関数(built-in functions)」**と呼ばれ、Pythonに最初から用意されている関数です。特別な準備なしで、どのファイルでも、どのスクリプトでもすぐに使えるのが特徴です。
たとえばこんな関数たちです:
print("こんにちは") # 画面に表示
len("Python") # 文字列の長さを取得
これらはimport文を使わなくてもそのまま使えます。つまり、「Pythonの世界に最初からある道具箱」みたいな存在なんです。
組み込み関数を知っていると、こんなに便利!
組み込み関数を使いこなせると、コードがグッとスッキリします。たとえば、リストの中身を一気に確認したいときにall()やany()を使えば、わざわざfor文を書かなくても済みます。
また、オブジェクトの型を調べるisinstance()や、属性があるかどうかを調べるhasattr()は、柔軟なコードを書くときにとても役立ちます。これらは「メタプログラミング」と呼ばれる高度なテクニックの基礎にもなっているんです。
この記事では、Pythonを勉強し始めたばかりの方や、基本は使えるけど「もっとスマートに書きたい!」という方に向けて、よく使われる組み込み関数をやさしく・具体例付きで解説していきます。
「組み込み関数ってたくさんあって難しそう…」と思うかもしれませんが、心配はいりません。この記事では特によく使われる便利な関数だけをピックアップして紹介していきます。順番に読み進めながら、ぜひ一つずつ覚えていってくださいね!
1. よく使う型チェック系関数
Pythonには、オブジェクトの中身や性質をチェックするための関数がいくつか用意されています。ここではその中でもよく使われる3つの関数、isinstance()、hasattr()、callable()についてやさしく解説します。
1-1. isinstance()|このオブジェクト、何の型?
isinstance()は、ある変数や値が特定の型(クラス)に属しているかどうかを調べる関数です。
num = 10
print(isinstance(num, int)) # 結果: True
このように、変数numがint型かどうかをチェックしてくれます。さらに便利なのが、サブクラス(子クラス)もOKと判断してくれるところです。type()との違いですね。
また、複数の型をタプルで指定することもできます。
value = 3.14
print(isinstance(value, (int, float))) # 結果: True
これは「valueがintまたはfloatならOK」とする書き方です。入力チェックや柔軟な関数の設計にとても便利ですよ。
1-2. hasattr()|このオブジェクトに●●ってある?
hasattr()は、あるオブジェクトが特定の属性やメソッドを持っているかを調べる関数です。
class Dog:
def bark(self):
print("ワン!")
inu = Dog()
print(hasattr(inu, 'bark')) # 結果: True
print(hasattr(inu, 'meow')) # 結果: False
このように、inuオブジェクトがbarkというメソッドを持っているかを確認できます。属性名は文字列で指定する点に注意してください。
hasattr()は、ユーザーからの入力やAPIから取得したデータの安全性をチェックしたいときにとても役立ちます。
1-3. callable()|このオブジェクト、呼び出せる?
callable()は、オブジェクトが関数のように「呼び出し可能」かどうかを調べる関数です。
def hello():
print("こんにちは!")
print(callable(hello)) # 結果: True
print(callable("文字列")) # 結果: False
このように、関数やクラスは呼び出せるのでTrue、文字列や数値はFalseになります。
特に関数型プログラミングやメタプログラミングの場面では、動的に渡されたオブジェクトが呼び出せるかどうかを確認するためによく使われます。
まとめ:型チェック3兄弟で安心コーディング
| 関数名 | できること | 例 |
|---|---|---|
isinstance | 型が一致するか確認(サブクラス対応) | isinstance(x, int) |
hasattr | 属性やメソッドがあるか確認 | hasattr(obj, 'name') |
callable | 関数やクラスとして呼び出せるか確認 | callable(f) |

これらの関数をうまく使えば、安全で柔軟なコードを書くことができます。次は、データの中身を一気にチェックできる便利な関数 all() と any() を紹介します!
2. ブール判定に便利な all / any
Pythonには、リストやタプルの中身をまとめてチェックできる便利な関数があります。それが all() と any() です。
一つ一つ確認するのではなく、**「全部OK?」「一つでもOK?」**を一瞬で判断できるこの関数たちは、バリデーション処理などでとても重宝します!
2-1. all()|すべてが「True」ならOK!
all() は、リストやタプルなどの繰り返し可能なオブジェクトの中身がすべて真(True)なら True を返す関数です。
flags = [True, True, True]
print(all(flags)) # 結果: True
flags = [True, False, True]
print(all(flags)) # 結果: False
ポイントは「1つでも False(または Falseとみなされる値)があると全体が False」になるということ。
Pythonでは、数値の 0 や空文字列 ''、空のリスト [] なども False とみなされるので注意しましょう。
values = [1, 2, 0]
print(all(values)) # 結果: False(0が含まれているため)
✅ 使用シーンの例:
- ユーザー入力の各項目がすべて入力済みかどうか確認
- 条件を全て満たしているかのチェック
2-2. any()|一つでも「True」があればOK!
any() は all() と逆で、一つでも真(True)があれば True を返します。
flags = [False, False, True]
print(any(flags)) # 結果: True
flags = [False, False, False]
print(any(flags)) # 結果: False
「少なくとも一つでも条件を満たしていればOK」というときに便利です。
inputs = ["", "hello", ""]
print(any(inputs)) # 結果: True("hello"が非空なので)
✅ 使用シーンの例:
- 入力フォームのどこか1か所でも入力されていれば処理を続行
- エラーや警告のフラグが一つでも立っているか確認
all / any の違いまとめ
| 関数名 | 判定基準 | すべてFalseなら? | 一つでもTrueなら? |
|---|---|---|---|
all | すべての要素がTrueか? | False | True |
any | 一つでもTrueがあるか? | False | True |

この2つの関数は、for文を書かずにリスト全体を一括チェックできるという意味でとてもパワフルです。
3. これまでに紹介した便利な組み込み関数
ここでは、過去の記事で紹介してきたPythonの代表的な組み込み関数たちを、用途ごとに分けておさらいしていきます。
どれもPython初心者が早い段階で覚えておきたい超便利関数なので、「あれ、あの関数ってどんな時使うんだっけ?」という確認にもピッタリです!
3-1. 高階関数(map, filter)
Pythonでは、関数を引数として渡すことができます。これを高階関数といい、その代表例が以下の2つです。
🔹 map():すべての要素に処理を適用
numbers = [1, 2, 3]
squares = list(map(lambda x: x**2, numbers)) # [1, 4, 9]
🔹 filter():条件を満たす要素だけを抽出
numbers = [1, 2, 3, 4]
evens = list(filter(lambda x: x % 2 == 0, numbers)) # [2, 4]
3-2. for文でよく使う関数
🔹 enumerate():インデックス付きでループ
names = ["Alice", "Bob"]
for i, name in enumerate(names):
print(i, name)
🔹 zip():複数リストを同時に処理
a = [1, 2]
b = ["one", "two"]
for x, y in zip(a, b):
print(x, y)
🔹 range():指定した範囲の連番を生成
for i in range(3): # 0, 1, 2
print(i)
3-3. 要素の順番を変更
🔹 reversed():逆順にする(イテレーター)
list(reversed([1, 2, 3])) # [3, 2, 1]
🔹 sorted():並び替え(非破壊的)
sorted([3, 1, 2]) # [1, 2, 3]
3-4. その他よく使う基本関数
🔹 len():長さを取得
len("Python") # 6
🔹 id():オブジェクトのIDを確認
a = 100
print(id(a))
🔹 input():ユーザーからの入力を取得
name = input("名前を入力してください:")
🔹 property, staticmethod, classmethod:クラス内での特殊な関数定義(デコレーターとして使用)
3-5. 数値計算関連の関数
🔹 max(), min(): 最大・最小値を取得
max([1, 3, 2]) # 3
min([1, 3, 2]) # 1
🔹 sum(): 合計を計算
sum([1, 2, 3]) # 6
🔹 abs(): 絶対値を返す
abs(-10) # 10
🔹 round(): 小数点の丸め(ただし四捨五入とは異なる動作に注意)
round(1.5) # 2
round(0.5) # 0 ←注意!
3-6. 型変換関数
Pythonでは、変数の型を簡単に変換できます。
int("10") # 文字列 → 整数
float("3.14") # 文字列 → 浮動小数点
str(100) # 数値 → 文字列
list("abc") # 文字列 → リスト
set([1, 1, 2]) # リスト → 集合(重複除去)
tuple([1, 2]) # リスト → タプル

組み込み関数は、Pythonを使いこなすうえで欠かせない**「標準装備のツール群」**です。これらを組み合わせることで、コードを短く書いたり、処理を効率化したり、バグを減らしたりできます。
まとめ|関数を知るとPythonがもっと楽しくなる!
Pythonには、最初から使える便利な**組み込み関数(built-in functions)**がたくさん用意されています。
本記事では特に初心者の方に向けて、以下のような関数をやさしく紹介してきました。
✅ 型のチェック:isinstance()、hasattr()、callable()
✅ リストの中身を一括判定:all()、any()
✅ 復習で確認:map、filter、enumerate、zip、sorted などなど…
組み込み関数を覚えることで、コードの可読性が上がり、エラーも減り、なによりプログラミングがもっと楽しくなります!
最初は「こんなにたくさん覚えきれない…」と思うかもしれませんが、よく使うものから少しずつ使っていけば大丈夫です。
今日紹介した関数の中で「これ使ってみたいな」と思ったものがあれば、ぜひ自分のコードに取り入れてみてくださいね!
あわせて読みたい
以下の記事も、今回の内容とあわせて読むと理解が深まります:
よくある質問(Q&A)
- Q
isinstance()とtype()の違いって? - A
type()は完全に型が一致したときだけTrueになりますが、isinstance()はサブクラスもOKと判断してTrueを返します。柔軟に使いたいならisinstance()が便利です。
- Q
all()とany()はどうやって使い分ければいい? - A
全ての条件を満たしているか確認したいときは
all()、どれか一つでもOKならany()です。バリデーションや条件分岐でよく使われます。
- Q
callable()っていつ使うの? - A
関数やクラスなどが「呼び出せるかどうか」を調べたいときに使います。動的に関数を扱うような場面で役立ちます。







※当サイトはアフィリエイト広告を利用しています。リンクを経由して商品を購入された場合、当サイトに報酬が発生することがあります。
※本記事に記載しているAmazon商品情報(価格、在庫状況、割引、配送条件など)は、執筆時点のAmazon.co.jp上の情報に基づいています。
最新の価格・在庫・配送条件などの詳細は、Amazonの商品ページをご確認ください。