Python標準ライブラリの厳選おすすめ10選【初心者から上級者まで必見】

Pythonには「標準ライブラリ」と呼ばれる、インストール直後からすぐに使える強力なライブラリが数多く用意されています。
標準ライブラリを活用することで、面倒な処理もシンプルなコードで効率よく実装でき、開発や学習の幅が大きく広がります。
本記事では、実務や学習の現場で役立つPython標準ライブラリの中から、初心者から上級者まで必見のおすすめ10選を厳選して分かりやすく紹介します。
各ライブラリの特徴や主な用途、よく使う関数、サンプルコードを通して、あなたの「Python 標準ライブラリ 使い方」や「Python コード例」の理解を深めましょう。
Python標準ライブラリとは?
Python標準ライブラリとは、Pythonに最初から含まれている公式のライブラリ群です。
追加インストールや外部パッケージを使わずに、さまざまな処理(ファイル操作、データ変換、日付計算など)が行えるのが大きな特徴です。
標準ライブラリを活用することで安全で信頼性の高いコードを効率よく書くことができ、学習コストも大幅に削減できます。
2025年最新版|Python標準ライブラリの厳選おすすめ10選
os:ファイルやディレクトリ操作に便利
ファイルやディレクトリの作成・削除、パスの操作、環境変数の取得など、OSに依存する処理をシンプルに実装できます。
クロスプラットフォーム対応のコードも書きやすく、実務でも頻繁に利用される標準ライブラリです。
主な用途
- ファイルやディレクトリの一覧取得・作成・削除
- パスの結合や絶対パス取得
- 環境変数の取得・操作
よく使うメソッド・関数一覧
メソッド/関数 | 用途 |
---|---|
os.listdir() | ディレクトリ内のファイル一覧取得 |
os.mkdir() | 新しいディレクトリ作成 |
os.remove() | ファイルの削除 |
os.path.join() | パスの結合 |
os.environ | 環境変数の取得・操作 |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
import os # 1. os.mkdir() で新しいディレクトリを作成 # 存在していない場合のみ"sample_dir"を作成します if not os.path.exists('sample_dir'): os.mkdir('sample_dir') # 新しいディレクトリを作成 print('sample_dir ディレクトリを作成しました') # 2. os.path.join() でファイルパスを結合 file_path = os.path.join('sample_dir', 'sample.txt') # ディレクトリとファイル名を結合 print(f'ファイルパスを結合した結果: {file_path}') # 3. サンプルファイルを作成 with open(file_path, 'w') as f: f.write('テストデータ') # テスト用の文字列を書き込む # 4. os.listdir() で"sample_dir"内のファイル一覧を取得 files = os.listdir('sample_dir') # ディレクトリ内のファイル一覧を取得 print(f'"sample_dir"内のファイル一覧: {files}') # 5. os.environ で環境変数を取得 # 例:PATHという環境変数の値を取得して表示 path_env = os.environ.get('PATH') # 環境変数PATHの値を取得 print(f'環境変数PATHの値(一部抜粋): {path_env[:60]}...') # 6. os.remove() で作成したファイルを削除 os.remove(file_path) # 指定したファイルを削除 print(f'{file_path} を削除しました') # お掃除(ディレクトリの削除)→ os.rmdir()はあえてここでは未使用
sample_dir ディレクトリを作成しました ファイルパスを結合した結果: sample_dir/sample.txt "sample_dir"内のファイル一覧: ['sample.txt'] 環境変数PATHの値(一部抜粋): /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games... sample_dir/sample.txt を削除しました
sys:システム情報やコマンドライン操作に活躍
Pythonインタプリタや実行環境に関する情報を取得したり、コマンドライン引数の操作、プログラムの終了制御などが行える標準ライブラリです。
スクリプトの動作を柔軟に制御したいときに非常に便利です。
主な用途
- コマンドライン引数の取得
- 標準入力・出力のリダイレクト
- プログラムの終了や例外制御
よく使うメソッド・関数一覧
メソッド/関数 | 用途 |
---|---|
sys.argv | コマンドライン引数のリスト取得 |
sys.exit() | プログラムの終了 |
sys.version | Pythonのバージョン情報 |
sys.path | モジュール検索パスのリスト |
sys.stdin, stdout | 標準入力・標準出力ストリームの操作 |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
import sys # 1. sys.argv: コマンドライン引数のリストを取得 print('# sys.argv: コマンドライン引数一覧') print(sys.argv) # このスクリプトを実行したときの引数がリストで表示されます # 2. sys.version: Pythonのバージョン情報を表示 print('\n# sys.version: Pythonのバージョン情報') print(sys.version) # 現在使っているPythonのバージョンが表示されます # 3. sys.path: モジュール検索パスを表示 print('\n# sys.path: モジュールを探すときのパス一覧') for path in sys.path: print(path) # 4. sys.stdin, sys.stdout: 標準入力と標準出力を使った入出力 print('\n# sys.stdin, sys.stdout: 入力した内容をそのまま表示します(1行だけ)') print('何か文字を入力してください(例: hello): ', end='') user_input = sys.stdin.readline() # 1行だけユーザーから入力を受け取る sys.stdout.write('あなたが入力したのは: ' + user_input) # 5. sys.exit(): プログラムを終了する(以降のコードは実行されません) print('\n# sys.exit(): プログラムを強制終了します') sys.exit(0) print('この行は表示されません') # sys.exit()以降は実行されないことを確認
# sys.argv: コマンドライン引数一覧 ['sample.py'] # sys.version: Pythonのバージョン情報 3.11.8 (main, Mar 12 2024, 11:47:13) [GCC 12.2.0] # sys.path: モジュールを探すときのパス一覧 /usr/lib/python311.zip /usr/lib/python3.11 ... (省略) # sys.stdin, sys.stdout: 入力した内容をそのまま表示します(1行だけ) 何か文字を入力してください(例: hello): hello あなたが入力したのは: hello # sys.exit(): プログラムを強制終了します (この後のprint文は実行されません)
datetime:日付や時刻の操作が簡単
日付や時刻の取得、計算、フォーマット変換などを直感的に扱える標準ライブラリです。
スケジュール管理やログのタイムスタンプ処理など、日常的なプログラミングに欠かせません。
主な用途
- 現在時刻や日付の取得
- 日付や時刻の計算・加減算
- 日付や時刻の文字列フォーマット変換
よく使うメソッド・関数一覧
メソッド/関数 | 用途 |
---|---|
datetime.datetime.now() | 現在の日時を取得 |
datetime.date.today() | 今日の日付を取得 |
datetime.timedelta() | 日付や時刻の差分を表現 |
datetime.strptime() | 文字列から日時型への変換 |
datetime.strftime() | 日時型から文字列への変換 |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
from datetime import datetime, date, timedelta # 1. datetime.datetime.now(): 現在の日時を取得 now = datetime.now() print('# datetime.datetime.now(): 現在の日時を取得') print(now) # 例: 2025-06-25 14:23:45.123456 # 2. datetime.date.today(): 今日の日付を取得 today = date.today() print('\n# datetime.date.today(): 今日の日付を取得') print(today) # 例: 2025-06-25 # 3. datetime.timedelta(): 日付や時間の差を表現・計算 one_week = timedelta(weeks=1) # 1週間分の時間差を表現 future_date = today + one_week # 今日から1週間後の日付を計算 print('\n# datetime.timedelta(): 今日から1週間後の日付を計算') print(future_date) # 例: 2025-07-02 # 4. datetime.strptime(): 文字列を日付型に変換 date_str = "2025-07-01 12:30:00" dt_obj = datetime.strptime(date_str, "%Y-%m-%d %H:%M:%S") print('\n# datetime.strptime(): 文字列を日付型に変換') print(dt_obj) # 例: 2025-07-01 12:30:00 # 5. datetime.strftime(): 日付型を好きなフォーマットの文字列に変換 formatted_str = now.strftime("%Y年%m月%d日 %H時%M分") print('\n# datetime.strftime(): 日付型を日本語表記の文字列に変換') print(formatted_str) # 例: 2025年06月25日 14時23分
# datetime.datetime.now(): 現在の日時を取得 2025-06-25 14:23:45.123456 # datetime.date.today(): 今日の日付を取得 2025-06-25 # datetime.timedelta(): 今日から1週間後の日付を計算 2025-07-02 # datetime.strptime(): 文字列を日付型に変換 2025-07-01 12:30:00 # datetime.strftime(): 日付型を日本語表記の文字列に変換 2025年06月25日 14時23分
re:正規表現で文字列検索・置換
文字列パターンの検索や置換、抽出などを正規表現で簡単に実装できる標準ライブラリです。
複雑なテキスト処理やデータ抽出に強く、データ前処理やログ解析などで活躍します。
主な用途
- テキストから特定パターンの抽出
- 文字列の検索や置換
- 入力データのバリデーション
よく使うメソッド・関数一覧
メソッド/関数 | 用途 |
---|---|
re.search() | パターンに一致する最初の箇所を検索 |
re.match() | 文字列の先頭でパターンマッチを確認 |
re.findall() | 一致するすべてのパターンをリストで取得 |
re.sub() | 一致部分の置換 |
re.compile() | 正規表現パターンを事前にコンパイル |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
import re text = "メールはinfo@example.com、support@example.comまでご連絡ください。" # 1. re.search(): 文字列の中で最初にパターンに一致した部分を検索 search_result = re.search(r"\w+@\w+\.\w+", text) print('# re.search(): 最初に見つかったメールアドレスを取得') if search_result: print(search_result.group()) # 例: info@example.com # 2. re.match(): 文字列の先頭がパターンに一致するかを確認 match_result = re.match(r"\w+@\w+\.\w+", text) print('\n# re.match(): 文字列の先頭にメールアドレスがあるか確認') print(match_result) # None(先頭がメールアドレスではないため) # 3. re.findall(): 文字列中のすべてのパターンに一致する部分をリストで取得 all_emails = re.findall(r"\w+@\w+\.\w+", text) print('\n# re.findall(): すべてのメールアドレスをリストで取得') print(all_emails) # 例: ['info@example.com', 'support@example.com'] # 4. re.sub(): 一致した部分を他の文字列に置換 anonymized = re.sub(r"\w+@\w+\.\w+", "xxx@xxx.xxx", text) print('\n# re.sub(): メールアドレスを匿名化(置換)') print(anonymized) # 例: メールはxxx@xxx.xxx、xxx@xxx.xxxまでご連絡ください。 # 5. re.compile(): 正規表現パターンを事前にコンパイルして再利用 email_pattern = re.compile(r"\w+@\w+\.\w+") compiled_result = email_pattern.findall(text) print('\n# re.compile(): コンパイルしたパターンでメールアドレスを抽出') print(compiled_result) # 例: ['info@example.com', 'support@example.com']
# re.search(): 最初に見つかったメールアドレスを取得 info@example.com # re.match(): 文字列の先頭にメールアドレスがあるか確認 None # re.findall(): すべてのメールアドレスをリストで取得 ['info@example.com', 'support@example.com'] # re.sub(): メールアドレスを匿名化(置換) メールはxxx@xxx.xxx、xxx@xxx.xxxまでご連絡ください。 # re.compile(): コンパイルしたパターンでメールアドレスを抽出 ['info@example.com', 'support@example.com']
json:JSONデータの読み書きをサポート
JSON(JavaScript Object Notation)形式のデータをPythonの辞書型やリスト型と簡単に相互変換できる標準ライブラリです。
Web APIのやり取りや設定ファイルの管理、データの保存・読み込みなどに幅広く利用されます。
主な用途
- JSON形式のファイルや文字列の読み書き
- Web APIから取得したデータの処理
- データのシリアライズや保存
よく使うメソッド・関数一覧
メソッド/関数 | 用途 |
---|---|
json.load() | ファイルからJSONデータを読み込む |
json.loads() | 文字列からJSONデータを読み込む |
json.dump() | データをJSON形式でファイルに書き込む |
json.dumps() | データをJSON形式の文字列に変換する |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
import json # サンプル辞書データを用意 data = {"name": "Alice", "age": 25, "is_student": False} # 1. json.dumps(): Pythonのデータ型をJSON形式の文字列に変換 json_str = json.dumps(data, ensure_ascii=False) print('# json.dumps(): Pythonの辞書をJSON文字列に変換') print(json_str) # 例: {"name": "Alice", "age": 25, "is_student": false} # 2. json.loads(): JSON形式の文字列をPythonのデータ型に変換 loaded_data = json.loads(json_str) print('\n# json.loads(): JSON文字列をPythonの辞書に変換') print(loaded_data) # 例: {'name': 'Alice', 'age': 25, 'is_student': False} # 3. json.dump(): Pythonのデータ型をJSON形式でファイルに書き込む with open('sample.json', 'w', encoding='utf-8') as f: json.dump(data, f, ensure_ascii=False) print('\n# json.dump(): Pythonの辞書をJSONファイルに書き込み') # 4. json.load(): ファイルからJSON形式のデータを読み込んでPythonのデータ型に変換 with open('sample.json', 'r', encoding='utf-8') as f: file_data = json.load(f) print('\n# json.load(): JSONファイルをPythonの辞書に変換') print(file_data) # 例: {'name': 'Alice', 'age': 25, 'is_student': False}
# json.dumps(): Pythonの辞書をJSON文字列に変換 {"name": "Alice", "age": 25, "is_student": false} # json.loads(): JSON文字列をPythonの辞書に変換 {'name': 'Alice', 'age': 25, 'is_student': False} # json.dump(): Pythonの辞書をJSONファイルに書き込み # json.load(): JSONファイルをPythonの辞書に変換 {'name': 'Alice', 'age': 25, 'is_student': False}
collections:便利なコレクション型が多数
リストや辞書よりも高機能なデータ構造(コレクション型)を簡単に利用できる標準ライブラリです。
データ集計や並び替え、スタックやキューなど、複雑なデータ処理を効率化できます。
主な用途
- データの集計やカウント
- スタックやキューの実装
- 順序付き辞書の利用
よく使うメソッド・関数一覧
クラス/関数 | 用途 |
---|---|
collections.Counter | 要素の出現回数をカウントする辞書型 |
collections.deque | 高速な両端キュー(スタック・キュー対応) |
collections.defaultdict | デフォルト値付き辞書型 |
collections.OrderedDict | 順序を保持する辞書型(Python 3.7以降はdictも順序保持) |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
from collections import Counter, deque, defaultdict, OrderedDict # 1. collections.Counter: リスト内の要素の出現回数をカウント fruits = ['apple', 'banana', 'apple', 'orange', 'banana'] fruit_count = Counter(fruits) # 各要素の出現回数を自動で数える print('# Counter: リスト内の要素をカウント') print(fruit_count) # 例: Counter({'apple': 2, 'banana': 2, 'orange': 1}) # 2. collections.deque: 両端から高速に要素を追加・削除できるキュー d = deque() # 空のdequeを作成 d.append('A') # 右端に要素を追加 d.appendleft('B') # 左端に要素を追加 d.pop() # 右端の要素を取り出して削除 print('\n# deque: 両端から追加・削除できるキュー') print(d) # 例: deque(['B']) # 3. collections.defaultdict: 初期値を自動設定できる辞書 dd = defaultdict(int) # int()で初期値が0の辞書 dd['apple'] += 1 # キーが存在しなくても0からスタートして1が入る print('\n# defaultdict: 初期値が自動で設定される辞書') print(dd) # 例: defaultdict(<class 'int'>, {'apple': 1}) # 4. collections.OrderedDict: 挿入順を保持する辞書 od = OrderedDict() # 空のOrderedDictを作成 od['one'] = 1 od['two'] = 2 od['three'] = 3 print('\n# OrderedDict: 登録順を保持する辞書') print(od) # 例: OrderedDict([('one', 1), ('two', 2), ('three', 3)])
# Counter: リスト内の要素をカウント Counter({'apple': 2, 'banana': 2, 'orange': 1}) # deque: 両端から追加・削除できるキュー deque(['B']) # defaultdict: 初期値が自動で設定される辞書 defaultdict(<class 'int'>, {'apple': 1}) # OrderedDict: 登録順を保持する辞書 OrderedDict([('one', 1), ('two', 2), ('three', 3)])
itertools:イテレータ操作を強化
繰り返し処理や組み合わせ・順列の生成、無限イテレータなど、イテレータをより柔軟かつ効率的に操作できる標準ライブラリです。
効率的なデータ処理やアルゴリズム実装に役立ちます。
主な用途
- 組み合わせや順列の生成
- 無限ループや条件付きループの簡易実装
- グループ分けやフィルタリング処理
よく使うメソッド・関数一覧
関数名 | 用途 |
---|---|
itertools.count() | 無限に増加するイテレータを生成 |
itertools.cycle() | 指定した要素を無限に繰り返す |
itertools.permutations() | 順列(並べ替え)を生成 |
itertools.combinations() | 組み合わせを生成 |
itertools.groupby() | 連続した同じ値をグループ化 |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
import itertools # 1. itertools.count(): 無限に増加する数列を生成 print('# itertools.count(): 1から始まる連続した数値を3つだけ表示') counter = itertools.count(1) # 1から始めて1ずつ増える for _ in range(3): print(next(counter)) # 1, 2, 3 # 2. itertools.cycle(): 指定したリストの要素を繰り返し取得 print('\n# itertools.cycle(): ["A", "B"]を繰り返し3回出力') cycler = itertools.cycle(['A', 'B']) for _ in range(3): print(next(cycler)) # A, B, A # 3. itertools.permutations(): リストの順列(並び替え)を生成 print('\n# itertools.permutations(): ["X", "Y"]の順列') for p in itertools.permutations(['X', 'Y']): print(p) # ('X', 'Y'), ('Y', 'X') # 4. itertools.combinations(): リストから組み合わせを生成 print('\n# itertools.combinations(): [1, 2, 3]から2つずつの組み合わせ') for c in itertools.combinations([1, 2, 3], 2): print(c) # (1, 2), (1, 3), (2, 3) # 5. itertools.groupby(): 連続した同じ値をグループ分け print('\n# itertools.groupby(): [1, 1, 2, 2, 2, 3]をグループ分け') for key, group in itertools.groupby([1, 1, 2, 2, 2, 3]): print(f'{key}: {list(group)}') # 1: [1, 1], 2: [2, 2, 2], 3: [3]
# itertools.count(): 1から始まる連続した数値を3つだけ表示 1 2 3 # itertools.cycle(): ["A", "B"]を繰り返し3回出力 A B A # itertools.permutations(): ["X", "Y"]の順列 ('X', 'Y') ('Y', 'X') # itertools.combinations(): [1, 2, 3]から2つずつの組み合わせ (1, 2) (1, 3) (2, 3) # itertools.groupby(): [1, 1, 2, 2, 2, 3]をグループ分け 1: [1, 1] 2: [2, 2, 2] 3: [3]
logging:ログ出力で開発・運用を支援
プログラムの実行状況やエラー情報を記録できる標準ライブラリです。
エラーのトラブルシューティングや運用監視、開発時のデバッグなど、さまざまな場面で活用できます。
主な用途
- プログラムの動作ログの記録
- エラーや例外発生時の記録
- デバッグ情報の出力や管理
よく使うメソッド・関数一覧
メソッド/関数 | 用途 |
---|---|
logging.basicConfig() | ログの基本設定を行う |
logging.debug() | デバッグ用のメッセージを出力 |
logging.info() | 通常の情報メッセージを出力 |
logging.warning() | 警告メッセージを出力 |
logging.error() | エラーメッセージを出力 |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
import logging # 1. logging.basicConfig(): ログの基本設定を行う # ログレベルをDEBUGにして、すべてのレベルのメッセージを表示する logging.basicConfig(level=logging.DEBUG, format='%(levelname)s: %(message)s') # 2. logging.debug(): デバッグ用の詳細なメッセージを出力 logging.debug('デバッグ: 変数の値や処理の流れを細かく確認したいとき') # 3. logging.info(): 一般的な動作情報メッセージを出力 logging.info('情報: プログラムが正常に動いていることを知らせる') # 4. logging.warning(): 注意が必要な状況を警告するメッセージを出力 logging.warning('警告: 想定外の事態だが、致命的ではない場合') # 5. logging.error(): エラーが発生したことを知らせるメッセージを出力 logging.error('エラー: 処理が失敗した、または例外が発生したとき')
DEBUG: デバッグ: 変数の値や処理の流れを細かく確認したいとき INFO: 情報: プログラムが正常に動いていることを知らせる WARNING: 警告: 想定外の事態だが、致命的ではない場合 ERROR: エラー: 処理が失敗した、または例外が発生したとき
subprocess:外部プログラムの実行・制御
Pythonから他のプログラムやコマンドを実行し、その結果や出力を受け取ることができる標準ライブラリです。
シェルスクリプトの自動化や外部ツールとの連携、バッチ処理などに便利です。
主な用途
- シェルコマンドや外部プログラムの実行
- 外部コマンドの出力取得・エラー処理
- 複雑なバッチ処理や自動化スクリプトの作成
よく使うメソッド・関数一覧
メソッド/関数 | 用途 |
---|---|
subprocess.run() | コマンドを実行し、完了まで待機 |
subprocess.Popen() | コマンドを非同期実行・詳細制御 |
subprocess.check_output() | コマンドの出力だけを取得 |
subprocess.DEVNULL | 出力先や入力元の無効化に利用 |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
import subprocess # 1. subprocess.run(): コマンドを実行し、完了まで待機 # ここでは 'echo' コマンドで"Hello, subprocess!"を表示 print('# subprocess.run(): コマンドの実行と出力') result = subprocess.run(['echo', 'Hello, subprocess!'], capture_output=True, text=True) print(result.stdout.strip()) # 出力結果を表示 # 2. subprocess.Popen(): 非同期でコマンドを実行し、細かく制御できる print('\n# subprocess.Popen(): 非同期でコマンドを実行し、出力を取得') with subprocess.Popen(['echo', 'Popenで実行'], stdout=subprocess.PIPE, text=True) as proc: popen_output = proc.stdout.read() print(popen_output.strip()) # 3. subprocess.check_output(): コマンドの出力だけを一発で取得 print('\n# subprocess.check_output(): コマンド出力のみ取得') output = subprocess.check_output(['echo', 'check_outputで取得'], text=True) print(output.strip()) # 4. subprocess.DEVNULL: コマンドの標準出力や標準エラー出力を捨てたいときに使う print('\n# subprocess.DEVNULL: 出力を無効化してコマンドを実行(表示されません)') subprocess.run(['echo', 'これは表示されません'], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL) print('出力なしでコマンドを実行しました')
# subprocess.run(): コマンドの実行と出力 Hello, subprocess! # subprocess.Popen(): 非同期でコマンドを実行し、出力を取得 Popenで実行 # subprocess.check_output(): コマンド出力のみ取得 check_outputで取得 # subprocess.DEVNULL: 出力を無効化してコマンドを実行(表示されません) 出力なしでコマンドを実行しました
math:数学計算を強力にサポート
数学的な計算(四則演算、累乗、三角関数、平方根、対数など)を簡単かつ高速に実行できる標準ライブラリです。
科学技術計算やデータ分析、アルゴリズムの実装など幅広い分野で活用されます。
主な用途
- 四則演算や平方根・累乗の計算
- 三角関数や対数の利用
- 丸め処理や絶対値計算
よく使うメソッド・関数一覧
メソッド/関数 | 用途 |
---|---|
math.sqrt() | 平方根の計算 |
math.pow() | 累乗の計算 |
math.sin(), cos(), tan() | 三角関数の計算 |
math.log() | 対数(自然対数)の計算 |
math.ceil(), floor() | 切り上げ・切り捨ての丸め処理 |
サンプルコードと実行結果例
- サンプルーコードと実行結果例を見る
-
import math # 1. math.sqrt(): 平方根を計算 print('# math.sqrt(): 16の平方根を計算') print(math.sqrt(16)) # 4.0 # 2. math.pow(): 累乗(べき乗)を計算 print('\n# math.pow(): 2の3乗(2^3)を計算') print(math.pow(2, 3)) # 8.0 # 3. math.sin(), math.cos(), math.tan(): 三角関数を計算 print('\n# math.sin(), math.cos(), math.tan(): 30度の三角関数値を計算') angle_deg = 30 angle_rad = math.radians(angle_deg) # 度をラジアンに変換 print('sin(30°):', math.sin(angle_rad)) # 0.5 print('cos(30°):', math.cos(angle_rad)) # 約0.866 print('tan(30°):', math.tan(angle_rad)) # 約0.577 # 4. math.log(): 自然対数(底がe)を計算 print('\n# math.log(): 10の自然対数(ln(10))を計算') print(math.log(10)) # 約2.302 # 5. math.ceil(), math.floor(): 切り上げ・切り捨てを計算 value = 3.7 print('\n# math.ceil(), math.floor(): 3.7の切り上げ・切り捨て') print('切り上げ:', math.ceil(value)) # 4 print('切り捨て:', math.floor(value)) # 3
# math.sqrt(): 16の平方根を計算 4.0 # math.pow(): 2の3乗(2^3)を計算 8.0 # math.sin(), math.cos(), math.tan(): 30度の三角関数値を計算 sin(30°): 0.49999999999999994 cos(30°): 0.8660254037844387 tan(30°): 0.5773502691896257 # math.log(): 10の自然対数(ln(10))を計算 2.302585092994046 # math.ceil(), math.floor(): 3.7の切り上げ・切り捨て 切り上げ: 4 切り捨て: 3
番外編・補足:他にもおすすめの標準ライブラリ
上記10選のほかにも、Python標準ライブラリには実務や学習に役立つ便利なモジュールが多数用意されています。
以下は特におすすめのライブラリです。
- shutil
ファイルやディレクトリのコピー・移動・削除など、高度なファイル操作ができるライブラリ。バックアップやディレクトリ整理などに便利です。 - glob
ワイルドカードを使ったファイル検索が可能。特定パターンのファイル一覧取得やバッチ処理時によく使われます。 - configparser
設定ファイル(INI形式)の読み書きができるライブラリ。複数環境での設定管理やアプリケーションの初期設定などに役立ちます。
よくある質問(FAQ)
Q1. Python標準ライブラリはどうやって調べるの?
Python公式ドキュメントの「ライブラリリファレンス」ページで一覧を確認できます。
また、help('modules')
と入力すると利用可能な標準ライブラリの一覧が表示されます。
Q2. pipでインストールする必要はある?
標準ライブラリはPython本体に最初から含まれているため、pipによるインストールは不要です。
importするだけですぐに使えます。
Q3. pipでインストールする外部ライブラリとの違いは?
標準ライブラリはPythonの公式サポートがあり、追加インストールや依存関係の心配がありません。
一方、pipで入れる外部ライブラリは機能が豊富な一方で、更新や互換性管理が必要な場合があります。
Q4. 標準ライブラリだけで十分?
多くの一般的な処理は標準ライブラリでカバーできますが、機械学習やWebアプリ開発など、専門的な用途には外部ライブラリの利用も検討しましょう。
まとめ
Python標準ライブラリには、ファイル操作やデータ変換、日付処理、正規表現、イテレータ操作、ログ出力など、日々の開発や学習で役立つ機能が豊富に揃っています。
標準ライブラリを活用すれば、追加インストールなしで高品質なコードを効率的に書くことができ、実務でもトラブルシューティングや運用を有利に進められます。
ぜひ本記事で紹介したライブラリの使い方やコード例を参考に、日々のPython学習や開発に取り入れてみてください。
CTA(関連記事・Python学習リソースへの案内)
さらに詳しく学びたい方は、以下の関連記事や公式ドキュメントもチェックしてみましょう!
もしこの記事が役立ったら、ブックマークやSNSシェアで応援いただけると嬉しいです!
今後も「Python 標準ライブラリ おすすめ」や「Python ライブラリ 使い方」に関する情報を発信していきますので、ぜひ他の記事もご覧ください。