Python 標準ライブラリ¶
Python 言語リファレンス ではプログラミング言語 Python の厳密な構文とセマンティクスについて説明されていますが、このライブラリリファレンスマニュアルでは Python とともに配付されている標準ライブラリについて説明します。また Python 配布物に収められていることの多いオプションのコンポーネントについても説明します。
Python の標準ライブラリはとても拡張性があり、下の長い目次のリストで判るように幅広いものを用意しています。このライブラリには、例えばファイル I/O のように、Python プログラマが直接アクセスできないシステム機能へのアクセス機能を提供する (Cで書かれた) 組み込みモジュールや、日々のプログラミングで生じる多くの問題に標準的な解決策を提供するPython で書かれたモジュールが入っています。これら数多くのモジュールには、プラットフォーム固有の事情をプラットフォーム独立な API へと昇華させることにより、Pythonプログラムに移植性を持たせ、それを高めるという明確な意図があります。
Windows 向けの Python インストーラはたいてい標準ライブラリのすべてを含み、しばしばそれ以外の追加のコンポーネントも含んでいます。Unix 系のオペレーティングシステムの場合は Python は一揃いのパッケージとして提供されるのが普通で、オプションのコンポーネントを手に入れるにはオペレーティングシステムのパッケージツールを使うことになるでしょう。
標準ライブラリに加えて、数10万のコンポーネントが (独立したプログラムやモジュールからパッケージ、アプリケーション開発フレームワークまで) 活動しているコレクションとしてPython Package Index から入手可能です。
- はじめに
- 組み込み関数
- 組み込み定数
- 組み込み型
- 組み込み例外
- テキスト処理サービス
- バイナリデータ処理
- データ型
datetime
--- 基本的な日付と時間の型zoneinfo
--- IANA タイムゾーンのサポートcalendar
--- 一般的なカレンダーに関係する機能群collections
--- コンテナデータ型collections.abc
--- コンテナの抽象基底クラスheapq
--- ヒープキューアルゴリズムbisect
--- 配列二分法アルゴリズムarray
--- 効率的な数値配列weakref
--- 弱参照types
--- 動的な型生成と組み込み型の名前copy
--- 浅いコピーおよび深いコピー操作pprint
--- データの整形表示reprlib
--- もう一つのrepr()
の実装enum
--- 列挙型のサポートgraphlib
--- グラフ構造を操作する機能
- 数値と数学モジュール
- 関数型プログラミング用モジュール
- ファイルとディレクトリへのアクセス
- データの永続化
- データ圧縮とアーカイブ
- ファイルフォーマット
- 暗号関連のサービス
- 汎用オペレーティングシステムサービス
os
--- 雑多なオペレーティングシステムインターフェースio
--- ストリームを扱うコアツールtime
--- 時刻データへのアクセスと変換argparse
--- Parser for command-line options, arguments and subcommandslogging
--- Python 用のログ記録手段logging.config
--- ログ記録の環境設定logging.handlers
--- ログ記録ハンドラーgetpass
--- 可搬性のあるパスワード入力機構curses
--- 文字セル表示のターミナル処理curses.textpad
--- curses プログラムのためのテキスト入力ウィジェットcurses.ascii
--- ASCII 文字のユーティリティーcurses.panel
--- curses のためのパネルスタック拡張platform
--- 実行中プラットフォームの固有情報を参照するerrno
--- 標準の errno システムシンボルctypes
--- Python 用の外部関数ライブラリ
- 並行実行
- ネットワーク通信とプロセス間通信
- インターネット上のデータの操作
- 構造化マークアップツール
html
--- HyperText Markup Language のサポートhtml.parser
--- HTML と XHTML のシンプルなパーサーhtml.entities
--- HTML 一般実体の定義- XMLを扱うモジュール群
xml.etree.ElementTree
--- ElementTree XML APIxml.dom
--- ドキュメントオブジェクトモデル APIxml.dom.minidom
--- 最小限の DOM の実装xml.dom.pulldom
--- 部分的な DOM ツリー構築のサポートxml.sax
--- SAX2 バーサーのサポートxml.sax.handler
--- SAX ハンドラーの基底クラスxml.sax.saxutils
--- SAX ユーティリティーxml.sax.xmlreader
--- XML パーサーのインターフェースxml.parsers.expat
--- Expat を使用した高速な XML 解析
- インターネットプロトコルとサポート
webbrowser
--- 便利なウェブブラウザコントローラーwsgiref
--- WSGI ユーティリティとリファレンス実装urllib
--- URL を扱うモジュール群urllib.request
--- URL を開くための大規模なライブラリurllib.response
--- urllib で使用するレスポンスクラスurllib.parse
--- URL を構成要素に解析するurllib.error
--- urllib.request によって送出される例外クラスurllib.robotparser
--- robots.txt 用のパーサーhttp
--- HTTP モジュール群http.client
--- HTTP プロトコルクライアントftplib
--- FTP プロトコルクライアントpoplib
--- POP3 プロトコルクライアントimaplib
--- IMAP4 プロトコルクライアントsmtplib
--- SMTP プロトコルクライアントuuid
--- RFC 4122 に従った UUID オブジェクトsocketserver
--- ネットワークサーバーのフレームワークhttp.server
--- HTTP サーバーhttp.cookies
--- HTTP の状態管理http.cookiejar
--- HTTP クライアント用の Cookie 処理xmlrpc
--- XMLRPC サーバーとクライアントモジュール群xmlrpc.client
--- XML-RPC クライアントアクセスxmlrpc.server
--- 基本的な XML-RPC サーバーipaddress
--- IPv4/IPv6 操作ライブラリ
- マルチメディアサービス
- 国際化
- プログラムのフレームワーク
- Tk を用いたグラフィカルユーザーインターフェース
- 開発ツール
typing
--- 型ヒントのサポートpydoc
--- ドキュメント生成とオンラインヘルプシステム- Python 開発モード
doctest
--- 対話型の Python の例をテストするunittest
--- ユニットテストフレームワークunittest.mock
--- モックオブジェクトライブラリunittest.mock
--- 入門test
--- Regression tests package for Pythontest.support
--- テストのためのユーティリティ関数test.support.socket_helper
--- Utilities for socket teststest.support.script_helper
--- Utilities for the Python execution teststest.support.bytecode_helper
--- Support tools for testing correct bytecode generationtest.support.threading_helper
--- Utilities for threading teststest.support.os_helper
--- Utilities for os teststest.support.import_helper
--- Utilities for import teststest.support.warnings_helper
--- Utilities for warnings tests
- デバッグとプロファイル
- ソフトウェア・パッケージと配布
- Python ランタイムサービス
sys
--- システム固有のパラメーターと関数sys.monitoring
--- Execution event monitoringsysconfig
--- Python の構成情報へのアクセスを提供するbuiltins
--- 組み込みオブジェクト__main__
--- トップレベルのコード環境warnings
--- 警告の制御dataclasses
--- データクラスcontextlib
---with
文コンテキスト用ユーティリティabc
--- 抽象基底クラスatexit
--- 終了ハンドラーtraceback
--- スタックトレースの表示または取得__future__
--- future 文の定義gc
--- ガベージコレクターインターフェースinspect
--- 活動中のオブジェクトを調査するannotationlib
--- Functionality for introspecting annotationssite
--- サイト固有の設定フック
- カスタム Python インタプリタ
- モジュールのインポート
zipimport
--- Zip アーカイブからモジュールをインポートするpkgutil
--- パッケージ拡張ユーティリティmodulefinder
--- スクリプト中で使用されているモジュールの検索runpy
--- Python モジュールの位置特定と実行importlib
---import
の実装importlib.resources
-- パッケージリソースの読み取り、オープン、アクセスimportlib.resources.abc
-- リソースの抽象基底クラスimportlib.metadata
-- パッケージメタデータへのアクセスsys.path
モジュール検索パスの初期化
- Python言語サービス
ast
--- 抽象構文木symtable
--- コンパイラーの記号表へのアクセスtoken
--- Python 解析木で使われる定数keyword
--- Python キーワードのテストtokenize
--- Python ソース用のトークナイザーtabnanny
--- あいまいなインデントの検出pyclbr
--- Python モジュールブラウザーサポートpy_compile
--- Python ソースファイルをコンパイルするcompileall
--- Python ライブラリをバイトコンパイルするdis
--- Python バイトコードの逆アセンブラーpickletools
--- pickle 開発者用のツール群
- MS Windows 固有のサービス
- Unix 固有のサービス
- モジュールのコマンドラインインターフェース (CLI)
- 取って代わられたモジュール群
- セキュリティで考慮すべき点