Pythonの組み込み関数一覧と活用方法【保存版】

python

Pythonには、最初から使える便利な「組み込み関数」がたくさん用意されています。

これらの関数は、追加で何かをインストールしなくても使えて、効率的なプログラミングに欠かせません。

この記事では、主要な組み込み関数の一覧と、それぞれの基本的な使い方をわかりやすく説明します。

スポンサーリンク

組み込み関数ってなに?

組み込み関数とは?

組み込み関数とは、Pythonにあらかじめ用意されている関数で、特別なライブラリを使わずに利用できます。

importなどの準備が不要で、すぐに使えるのが特徴です。

どんなことができるの?

組み込み関数でできることは、大きく分けて以下のようなものがあります。

  • データ型の変換:数字を文字に変えたり、逆に文字を数字に変えたり
  • 数値や文字列の処理:計算や文字の操作
  • くり返しや条件分岐の補助:プログラムの流れを制御する

かんたんな例を見てみよう

# 組み込み関数の例
print("こんにちは")  # 文字を表示する
result = len("Python")  # 文字の長さを調べる
print(result)  # → 6

これらのprint()len()も組み込み関数です。特別な準備なしで使えますね。

概要を理解したところで、具体的な関数をカテゴリー別に見ていきましょう。

カテゴリー別 組み込み関数一覧

数値処理系の関数

abs(x):絶対値を返す 数字のプラスマイナスを取り除いて、正の数にします。

print(abs(-5))    # → 5
print(abs(3.2))   # → 3.2
print(abs(-10))   # → 10

round(x, ndigits):四捨五入する 小数点以下を四捨五入します。何桁で四捨五入するかも指定できます。

print(round(3.7))      # → 4
print(round(3.14159, 2))  # → 3.14(小数点第2位まで)
print(round(123.456, 1)) # → 123.5

pow(x, y):xのy乗を計算 べき乗(かけ算を何回も繰り返す)を計算します。

print(pow(2, 3))  # → 8(2×2×2)
print(pow(5, 2))  # → 25(5×5)
print(pow(10, 3)) # → 1000(10×10×10)

max() / min():最大・最小値 複数の数の中から一番大きいもの、一番小さいものを見つけます。

numbers = [10, 5, 8, 3, 12]
print(max(numbers))  # → 12
print(min(numbers))  # → 3

# 複数の値を直接指定することも可能
print(max(1, 5, 3, 9, 2))  # → 9
print(min(1, 5, 3, 9, 2))  # → 1

型変換系の関数

int(), float(), str():基本的な型変換 データの種類を変換します。

# 文字を数字に変換
print(int("123"))      # → 123
print(float("3.14"))   # → 3.14

# 数字を文字に変換
print(str(456))        # → "456"
print(str(7.89))       # → "7.89"

# 小数を整数に変換
print(int(3.9))        # → 3(小数点以下切り捨て)

bool():真偽値に変換 データが「本当かうそか」を判定します。

print(bool(1))      # → True(0以外の数字は真)
print(bool(0))      # → False(0は偽)
print(bool("hello")) # → True(空でない文字列は真)
print(bool(""))     # → False(空の文字列は偽)

list(), tuple(), set():コレクション型への変換 データをリスト、タプル、セットに変換します。

# 文字列をリストに変換
print(list("Python"))  # → ['P', 'y', 't', 'h', 'o', 'n']

# リストをタプルに変換
numbers = [1, 2, 3]
print(tuple(numbers))  # → (1, 2, 3)

# リストをセット(重複なし)に変換
data = [1, 2, 2, 3, 3, 3]
print(set(data))       # → {1, 2, 3}

文字列処理系の関数

len():長さを返す 文字列の長さや、リストの要素数を調べます。

print(len("こんにちは"))     # → 5
print(len("Python"))       # → 6
print(len([1, 2, 3, 4]))   # → 4

ord() / chr():文字とUnicodeの相互変換 文字を数字に、数字を文字に変換します。

# 文字を数字に変換
print(ord('A'))  # → 65
print(ord('a'))  # → 97
print(ord('あ'))  # → 12354

# 数字を文字に変換
print(chr(65))   # → 'A'
print(chr(97))   # → 'a'
print(chr(12354)) # → 'あ'

くり返し処理系の関数

range():数列を生成 連続した数字の列を作ります。

# 0から4まで
print(list(range(5)))        # → [0, 1, 2, 3, 4]

# 1から5まで
print(list(range(1, 6)))     # → [1, 2, 3, 4, 5]

# 2つずつ増加
print(list(range(0, 10, 2))) # → [0, 2, 4, 6, 8]

# 実際のfor文での使用例
for i in range(3):
    print(f"{i}回目の処理")

enumerate():インデックス付きでループ リストの中身と同時に、何番目かも知ることができます。

fruits = ["りんご", "バナナ", "オレンジ"]

for i, fruit in enumerate(fruits):
    print(f"{i}番目: {fruit}")
    
# 出力:
# 0番目: りんご
# 1番目: バナナ  
# 2番目: オレンジ

zip():複数のリストを同時に処理 複数のリストを同時にループできます。

names = ["田中", "佐藤", "鈴木"]
ages = [25, 30, 35]

for name, age in zip(names, ages):
    print(f"{name}さんは{age}歳です")
    
# 出力:
# 田中さんは25歳です
# 佐藤さんは30歳です
# 鈴木さんは35歳です

条件・検証系の関数

all():すべてが真ならTrue リストのすべての要素が「本当」かどうかを調べます。

print(all([True, True, True]))   # → True
print(all([True, False, True]))  # → False
print(all([1, 2, 3]))           # → True(0以外はすべて真)
print(all([1, 0, 3]))           # → False(0が含まれている)

any():いずれかが真ならTrue リストの中に一つでも「本当」があるかどうかを調べます。

print(any([False, False, True])) # → True
print(any([False, False, False])) # → False
print(any([0, 0, 1]))           # → True(1つでも0以外があれば)
print(any([0, 0, 0]))           # → False

isinstance():型の確認 変数がどんな型(種類)のデータかを確認します。

print(isinstance(123, int))        # → True
print(isinstance("hello", str))    # → True
print(isinstance([1, 2, 3], list)) # → True
print(isinstance(123, str))        # → False

ユーティリティ系の関数

input():標準入力を取得 ユーザーからの入力を受け取ります。

name = input("あなたの名前を入力してください: ")
print(f"こんにちは、{name}さん!")

age = int(input("年齢を入力してください: "))
print(f"{age}歳なんですね")

print():標準出力に表示 画面に文字や数字を表示します。

print("こんにちは")
print("今日は", "良い天気", "ですね")
print("合計:", 10 + 20)

# 改行なしで表示
print("hello", end=" ")
print("world")  # → "hello world"

sorted():ソートした新しいリストを返す リストを並び替えた新しいリストを作ります。

numbers = [3, 1, 4, 1, 5, 9]
print(sorted(numbers))        # → [1, 1, 3, 4, 5, 9]
print(sorted(numbers, reverse=True))  # → [9, 5, 4, 3, 1, 1]

fruits = ["バナナ", "りんご", "オレンジ"]
print(sorted(fruits))         # → ['オレンジ', 'バナナ', 'りんご']

注意点と安全な使い方

eval()について

eval()は文字列をPythonのコードとして実行する関数ですが、危険な場合があります。

# ❌ 危険な例(絶対にやらないでください)
user_input = "import os; os.system('rm -rf /')"  # システムを壊すコード
# eval(user_input)  # これを実行すると大変なことになります

# ✅ 安全な使用例
safe_calculation = "2 + 3 * 4"
result = eval(safe_calculation)
print(result)  # → 14

eval()を使うときの注意点:

  • 信頼できない入力データには絶対に使わない
  • できるだけ他の方法を考える
  • どうしても使う場合は、入力内容を厳しくチェックする

組み込み関数の上書きに注意

組み込み関数と同じ名前の変数を作ってしまうと、関数が使えなくなります。

# ❌ 良くない例
len = 10  # len関数を上書きしてしまう
# print(len("hello"))  # エラーになる

# ✅ 良い例
length = 10  # 違う名前を使う
print(len("hello"))  # 正常に動作する

よく間違える使い方

型変換での注意

# ❌ 文字列に数字以外が含まれている
# print(int("hello"))  # エラーになる

# ✅ 正しい使い方
try:
    result = int(input("数字を入力してください: "))
    print(f"入力された数字: {result}")
except ValueError:
    print("正しい数字を入力してください")

実際の活用例

成績処理システムの例

def process_scores():
    """学生の成績を処理するプログラム"""
    
    # 成績データ
    students = ["田中", "佐藤", "鈴木", "高橋"]
    scores = [85, 92, 78, 88]
    
    # 各学生の成績を表示
    print("=== 成績一覧 ===")
    for i, (name, score) in enumerate(zip(students, scores)):
        print(f"{i+1}. {name}: {score}点")
    
    # 統計情報を計算
    print(f"\n=== 統計情報 ===")
    print(f"最高点: {max(scores)}点")
    print(f"最低点: {min(scores)}点")
    print(f"平均点: {round(sum(scores) / len(scores), 1)}点")
    
    # 合格者(80点以上)をチェック
    passing_scores = [score >= 80 for score in scores]
    print(f"全員合格: {all(passing_scores)}")
    print(f"合格者あり: {any(passing_scores)}")
    
    # 成績順にソート
    print(f"\n=== 成績順 ===")
    score_pairs = list(zip(students, scores))
    sorted_pairs = sorted(score_pairs, key=lambda x: x[1], reverse=True)
    
    for i, (name, score) in enumerate(sorted_pairs):
        print(f"{i+1}位: {name} ({score}点)")

# 実行
process_scores()

データ処理の例

def analyze_data():
    """データ分析の例"""
    
    # サンプルデータ
    temperatures = [25.5, 28.2, 22.1, 30.0, 26.8, 24.3, 29.1]
    
    print("=== 気温データ分析 ===")
    print(f"データ数: {len(temperatures)}")
    print(f"最高気温: {max(temperatures)}℃")
    print(f"最低気温: {min(temperatures)}℃")
    print(f"平均気温: {round(sum(temperatures) / len(temperatures), 1)}℃")
    
    # 25度以上の日数をカウント
    hot_days = [temp >= 25.0 for temp in temperatures]
    hot_day_count = sum(hot_days)
    print(f"25度以上の日数: {hot_day_count}日")
    
    # データを整理して表示
    print(f"\n=== 日別データ ===")
    for day, temp in enumerate(temperatures, 1):
        status = "暑い" if temp >= 25.0 else "涼しい"
        print(f"{day}日目: {temp}℃ ({status})")

# 実行
analyze_data()

まとめ

Pythonの組み込み関数は、初心者にも上級者にも欠かせない強力なツールです。これらの関数を活用することで、プログラミングの効率が大きく向上します。

この記事で学んだポイント

  • 組み込み関数は最初から使える便利な機能
  • 数値処理、型変換、文字列操作など幅広い用途がある
  • くり返し処理や条件判定にも活用できる
  • 安全な使い方を心がけることが重要
  • 実際のプロジェクトでも頻繁に使われる

コメント

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