Python 標準ライブラリ¶
Python 言語リファレンス ではプログラミング言語 Python の厳密な構文とセマンティクスについて説明されていますが、このライブラリリファレンスマニュアルでは Python とともに配付されている標準ライブラリについて説明します。また Python 配布物に収められていることの多いオプションのコンポーネントについても説明します。
Python の標準ライブラリはとても拡張性があり、下の長い目次のリストで判るように幅広いものを用意しています。このライブラリには、例えばファイル I/O のように、Python プログラマが直接アクセスできないシステム機能へのアクセス機能を提供する (Cで書かれた) 組み込みモジュールや、日々のプログラミングで生じる多くの問題に標準的な解決策を提供するPython で書かれたモジュールが入っています。これら数多くのモジュールには、プラットフォーム固有の事情をプラットフォーム独立な API へと昇華させることにより、Pythonプログラムに移植性を持たせ、それを高めるという明確な意図があります。
Windows 向けの Python インストーラはたいてい標準ライブラリのすべてを含み、しばしばそれ以外の追加のコンポーネントも含んでいます。Unix 系のオペレーティングシステムの場合は Python は一揃いのパッケージとして提供されるのが普通で、オプションのコンポーネントを手に入れるにはオペレーティングシステムのパッケージツールを使うことになるでしょう。
標準ライブラリに加えて、数千のコンポーネントが (独立したプログラムやモジュールからパッケージ、アプリケーション開発フレームワークまで) 成長し続けるコレクションとしてPython Package Index から入手可能です。
- はじめに
- 組み込み関数
- 組み込み定数
- 組み込み型
- 組み込み例外
- テキスト処理サービス
- バイナリデータ処理
- データ型
datetime
--- 基本的な日付型および時間型zoneinfo
--- IANA タイムゾーンのサポートcalendar
--- 一般的なカレンダーに関する関数群collections
--- コンテナデータ型collections.abc
--- コレクションの抽象基底クラスheapq
--- ヒープキューアルゴリズムbisect
--- 配列二分法アルゴリズムarray
--- 効率のよい数値アレイweakref
--- 弱参照types
--- 動的な型生成と組み込み型に対する名前copy
--- 浅いコピーおよび深いコピー操作pprint
--- データ出力の整然化reprlib
--- もう一つのrepr()
の実装enum
--- 列挙型のサポートgraphlib
--- Functionality to operate with graph-like structures
- 数値と数学モジュール
- 関数型プログラミング用モジュール
- ファイルとディレクトリへのアクセス
- データの永続化
- データ圧縮とアーカイブ
- ファイルフォーマット
- 暗号関連のサービス
- 汎用オペレーティングシステムサービス
os
--- 雑多なオペレーティングシステムインターフェースio
--- ストリームを扱うコアツールtime
--- 時刻データへのアクセスと変換argparse
--- コマンドラインオプション、引数、サブコマンドのパーサーgetopt
--- C 言語スタイルのコマンドラインオプションパーサlogging
--- Python 用ロギング機能logging.config
--- ロギングの環境設定logging.handlers
--- ロギングハンドラgetpass
--- 可搬性のあるパスワード入力機構curses
--- 文字セル表示を扱うための端末操作curses.textpad
--- curses プログラムのためのテキスト入力ウィジェットcurses.ascii
--- ASCII 文字に関するユーティリティcurses.panel
--- curses のためのパネルスタック拡張platform
--- 実行中プラットフォームの固有情報を参照するerrno
--- 標準の errno システムシンボルctypes
--- Pythonのための外部関数ライブラリ
- 並行実行
- ネットワーク通信とプロセス間通信
- インターネット上のデータの操作
email
--- 電子メールと MIME 処理のためのパッケージjson
--- JSON エンコーダおよびデコーダmailbox
--- 様々な形式のメールボックス操作mimetypes
--- ファイル名を MIME 型へマップするbase64
--- Base16, Base32, Base64, Base85 データの符号化binhex
--- binhex4 形式ファイルのエンコードおよびデコードbinascii
--- バイナリデータと ASCII データとの間での変換quopri
--- MIME quoted-printable 形式データのエンコードおよびデコード
- 構造化マークアップツール
html
--- HyperText Markup Language のサポートhtml.parser
--- HTML および XHTML のシンプルなパーサーhtml.entities
--- HTML 一般実体の定義- XMLを扱うモジュール群
xml.etree.ElementTree
--- ElementTree XML APIxml.dom
--- 文書オブジェクトモデル (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 を用いたグラフィカルユーザインターフェイス
tkinter
--- Tcl/Tk の Python インターフェースtkinter.colorchooser
--- カラー選択ダイアログtkinter.font
--- Tkinterフォントラッパー- Tkinter ダイアログ
tkinter.messagebox
--- Tkinterのメッセージプロンプトtkinter.scrolledtext
--- スクロールするテキストウィジェットtkinter.dnd
--- Drag and drop supporttkinter.ttk
--- Tk のテーマ付きウィジェットtkinter.tix
--- Tkの拡張ウィジェット- IDLE
- 開発ツール
typing
--- 型ヒントのサポートpydoc
--- ドキュメント生成とオンラインヘルプシステム- Python 開発モード
- Effects of the Python Development Mode
- ResourceWarning Example
- Bad file descriptor error example
doctest
--- 対話的な実行例をテストするunittest
--- ユニットテストフレームワークunittest.mock
--- モックオブジェクトライブラリunittest.mock
--- 入門- 2to3 - Python 2 から 3 への自動コード変換
test
--- Python 用回帰テストパッケージtest.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 generation
- デバッグとプロファイル
- ソフトウェア・パッケージと配布
- Python ランタイムサービス
sys
--- システムパラメータと関数sysconfig
--- Python の構成情報にアクセスするbuiltins
--- 組み込みオブジェクト__main__
--- トップレベルのスクリプト環境warnings
--- 警告の制御dataclasses
--- データクラスcontextlib
---with
文コンテキスト用ユーティリティabc
--- 抽象基底クラスatexit
--- 終了ハンドラtraceback
--- スタックトレースの表示または取得__future__
--- future 文の定義gc
--- ガベージコレクタインターフェースinspect
--- 活動中のオブジェクトの情報を取得するsite
--- サイト固有の設定フック
- カスタム Python インタプリタ
- モジュールのインポート
- Python言語サービス
parser
--- Python 解析木にアクセスするast
--- 抽象構文木symtable
--- コンパイラの記号表へのアクセスsymbol
--- Python 解析木と共に使われる定数token
--- Python 解析木と共に使われる定数keyword
--- Python キーワードチェックtokenize
--- Pythonソースのためのトークナイザtabnanny
--- あいまいなインデントの検出pyclbr
--- Python モジュールブラウザサポートpy_compile
--- Python ソースファイルのコンパイルcompileall
--- Python ライブラリをバイトコンパイルdis
--- Python バイトコードの逆アセンブラpickletools
--- pickle 開発者のためのツール群
- 各種サービス
- MS Windows 固有のサービス
- Unix 固有のサービス
- 取って代わられたモジュール群
aifc
--- AIFFおよびAIFCファイルの読み書きasynchat
--- 非同期ソケットコマンド/レスポンスハンドラasyncore
--- 非同期ソケットハンドラaudioop
--- 生の音声データを操作するcgi
--- CGI (ゲートウェイインターフェース規格) のサポートcgitb
--- CGI スクリプトのトレースバック管理機構chunk
--- IFFチャンクデータの読み込みcrypt
--- Unix パスワードをチェックするための関数imghdr
--- 画像の形式を決定するimp
--- import 内部へのアクセスmailcap
--- mailcap ファイルの操作msilib
--- Microsoft インストーラーファイルの読み書きnis
--- Sun の NIS (Yellow Pages) へのインターフェースnntplib
--- NNTP プロトコルクライアントoptparse
--- コマンドラインオプション解析器ossaudiodev
--- OSS互換オーディオデバイスへのアクセスpipes
--- シェルパイプラインへのインターフェースsmtpd
--- SMTP サーバーsndhdr
--- サウンドファイルの識別spwd
--- シャドウパスワードデータベースsunau
--- Sun AUファイルの読み書きtelnetlib
--- Telnet クライアントuu
--- uuencode形式のエンコードとデコードxdrlib
--- XDR データのエンコードおよびデコード
- セキュリティで考慮すべき点