Python Documentation contents
*****************************

* What's New in Python

  * What's New In Python 3.8

    * 概要 -- リリースハイライト

    * 新しい機能

      * 代入式

      * 位置専用引数

      * コンパイル済みのバイトコードファイルのキャッシュを併存させるフ
        ァイルシステム

      * デバッグビルドとリリースビルドのABI 共通化

      * *f-string* での "=" を用いたオブジェクトの表現

      * PEP 578: Pythonランタイムの監査フック

      * PEP 587: Python 初期化設定

      * Vectorcall: CPython のための高速なプロトコル呼び出し

      * Pickle プロトコルバージョン 5 による帯域外データバッファ

    * その他の言語変更

    * 新たなモジュール

    * 改良されたモジュール

      * ast

      * asyncio

      * builtins

      * collections

      * cProfile

      * csv

      * curses

      * ctypes

      * datetime

      * functools

      * gc

      * gettext

      * gzip

      * IDLE と idelelib

      * inspect

      * io

      * itertools

      * json.tool

      * logging

      * math

      * mmap

      * multiprocessing

      * os

      * os.path

      * pathlib

      * pickle

      * plistlib

      * pprint

      * py_compile

      * shlex

      * shutil

      * socket

      * ssl

      * statistics

      * sys

      * tarfile

      * threading

      * tokenize

      * tkinter

      * time

      * typing

      * unicodedata

      * unittest

      * venv

      * weakref

      * xml

      * xmlrpc

    * 最適化

    * ビルドならびに C API の変更

    * 非推奨

    * API と機能の削除

    * Python 3.8 への移植

      * Python の挙動の変更

      * Python API の変更

      * C API の変更

      * CPython バイトコードの変更

      * Demos and Tools

    * Python3.8.1 での重要な変更点

    * Python3.8.2 での重要な変更点

    * Notable changes in Python 3.8.3

    * Python3.8.8 での重要な変更点

    * Notable changes in Python 3.8.9

    * Notable changes in Python 3.8.10

      * macOS 11.0 (Big Sur) と Appleシリコンの Mac のサポート

    * Notable changes in Python 3.8.10

      * urllib.parse

    * Notable changes in Python 3.8.12

      * Python API の変更

    * Notable security feature in 3.8.14

    * Notable Changes in 3.8.17

      * tarfile

  * What's New In Python 3.7

    * 概要 -- リリースハイライト

    * 新しい機能

      * PEP 563: アノテーションの遅延評価

      * PEP 538: レガシーな C ロケールの抑圧

      * PEP 540: 強制 UTF-8 実行モード

      * PEP 553: 組み込みの "breakpoint()"

      * PEP 539: スレッドローカルストレージのための新しい C API

      * PEP 562: モジュール属性へのアクセスのカスタマイズ

      * PEP 564: ナノ秒単位の分解能を持つ新しい時間関数

      * PEP 565: Show DeprecationWarning in "__main__"

      * PEP 560: "typing" モジュールとジェネリック型に対する言語コアに
        よるサポート

      * PEP 552: Hash-based .pyc Files

      * PEP 545: Python Documentation Translations

      * Development Runtime Mode: -X dev

    * その他の言語変更

    * 新たなモジュール

      * contextvars

      * データクラス

      * importlib.resources

    * 改良されたモジュール

      * argparse

      * asyncio

      * binascii

      * calendar

      * collections

      * compileall

      * concurrent.futures

      * contextlib

      * cProfile

      * crypt

      * datetime

      * dbm

      * decimal

      * dis

      * distutils

      * enum

      * functools

      * gc

      * hmac

      * http.client

      * http.server

      * idlelib と IDLE

      * importlib

      * io

      * ipaddress

      * itertools

      * locale

      * logging

      * math

      * mimetypes

      * msilib

      * multiprocessing

      * os

      * pathlib

      * pdb

      * py_compile

      * pydoc

      * queue

      * re

      * signal

      * socket

      * socketserver

      * sqlite3

      * ssl

      * string

      * subprocess

      * sys

      * time

      * tkinter

      * tracemalloc

      * types

      * unicodedata

      * unittest

      * unittest.mock

      * urllib.parse

      * uu

      * uuid

      * warnings

      * xml.etree

      * xmlrpc.server

      * zipapp

      * zipfile

    * C API の変更

    * Build Changes

    * 最適化

    * その他の CPython の実装の変更

    * 非推奨の Python の挙動

    * 非推奨の Python モジュール、関数、メソッド

      * aifc

      * asyncio

      * collections

      * dbm

      * enum

      * gettext

      * importlib

      * locale

      * macpath

      * threading

      * socket

      * ssl

      * sunau

      * sys

      * wave

    * C API の非推奨の関数ならびに型

    * サポート対象プラットフォームからの除外

    * API と機能の削除

    * Module Removals

    * Windows-only Changes

    * Python 3.7 への移植

      * Python の挙動の変更

      * Python API の変更

      * C API の変更

      * CPython バイトコードの変更

      * Windows-only Changes

      * その他の CPython の実装の変更

    * Python 3.7.1 での重要な変更点

    * Python 3.7.2 での重要な変更点

    * Python 3.7.6 での重要な変更点

    * Python 3.7.10 での重要な変更点

  * What's New In Python 3.6

    * 概要 -- リリースハイライト

    * 新しい機能

      * PEP 498: フォーマット済み文字列リテラル

      * PEP 526: 変数アノテーションの文法

      * PEP 515: 数値リテラル内のアンダースコア

      * PEP 525: 非同期ジェネレータ

      * PEP 530: 非同期内包表記

      * PEP 487: Simpler customization of class creation

      * PEP 487: 記述子プロトコルの改善

      * PEP 519: ファイルシステムパスプロトコルの追加

      * PEP 495: 地域時間の曖昧さ回避

      * PEP 529: Windows ファイルシステムのエンコーディングを UTF-8 に
        変更

      * PEP 528: Windows コンソールのエンコーディングを UTF-8 に変更

      * PEP 520: クラス属性の定義の順番を保持

      * PEP 468: キーワード引数の順番の保持

      * 新たな *dict* 実装

      * PEP 523: CPython にフレーム評価 API を追加

      * PYTHONMALLOC 環境変数

      * DTrace and SystemTap probing support

    * その他の言語変更

    * 新たなモジュール

      * secrets

    * 改良されたモジュール

      * array

      * ast

      * asyncio

      * binascii

      * cmath

      * collections

      * concurrent.futures

      * contextlib

      * datetime

      * decimal

      * distutils

      * email

      * エンコーディング

      * enum

      * faulthandler

      * fileinput

      * hashlib

      * http.client

      * idlelib と IDLE

      * importlib

      * inspect

      * json

      * logging

      * math

      * multiprocessing

      * os

      * pathlib

      * pdb

      * pickle

      * pickletools

      * pydoc

      * random

      * re

      * readline

      * rlcompleter

      * shlex

      * site

      * sqlite3

      * socket

      * socketserver

      * ssl

      * statistics

      * struct

      * subprocess

      * sys

      * telnetlib

      * time

      * timeit

      * tkinter

      * traceback

      * tracemalloc

      * typing

      * unicodedata

      * unittest.mock

      * urllib.request

      * urllib.robotparser

      * venv

      * warnings

      * winreg

      * winsound

      * xmlrpc.client

      * zipfile

      * zlib

    * 最適化

    * ビルドならびに C API の変更

    * その他の改善

    * 非推奨

      * 新たなキーワード

      * 非推奨の Python 挙動

      * 非推奨の Python モジュール、関数、メソッド

        * asynchat

        * asyncore

        * dbm

        * distutils

        * grp

        * importlib

        * os

        * re

        * ssl

        * tkinter

        * venv

      * C API の非推奨の関数ならびに型

      * 非推奨のビルドオプション

    * 削除

      * API と機能の削除

    * Python 3.6 への移植

      * 'python' コマンドの挙動の変更

      * Python API の変更

      * C API の変更

      * CPython バイトコードの変更

    * Notable changes in Python 3.6.2

      * New "make regen-all" build target

      * Removal of "make touch" build target

    * Notable changes in Python 3.6.4

    * Notable changes in Python 3.6.5

    * Notable changes in Python 3.6.7

    * Notable changes in Python 3.6.10

    * Notable changes in Python 3.6.13

  * What's New In Python 3.5

    * 概要 -- リリースハイライト

    * 新しい機能

      * PEP 492 - コルーチン、 async と await 構文

      * PEP 465 - 行列の乗算専用の中置演算子

      * PEP 448 - 追加可能なアンパックへの一般化

      * PEP 461 - bytes および bytearray のパーセント書式化サポート

      * PEP 484 - 型ヒント

      * PEP 471 - os.scandir() 関数 -- より良く、速いディレクトリイテ
        レータ

      * PEP 475: EINTR で失敗したシステムコールの再試行

      * PEP 479: ジェネレータ内の StopIteration の処理の変更

      * PEP 485: 近似的に等しいことを調べる関数

      * PEP 486: Python ランチャーが仮想環境を認識する

      * PEP 488: PYO ファイルの廃止

      * PEP 489: 拡張モジュールの多段階初期化

    * その他の言語変更

    * 新たなモジュール

      * typing

      * zipapp

    * 改良されたモジュール

      * argparse

      * asyncio

      * bz2

      * cgi

      * cmath

      * コード

      * collections

      * collections.abc

      * compileall

      * concurrent.futures

      * configparser

      * contextlib

      * csv

      * curses

      * dbm

      * difflib

      * distutils

      * doctest

      * email

      * enum

      * faulthandler

      * functools

      * glob

      * gzip

      * heapq

      * http

      * http.client

      * idlelib と IDLE

      * imaplib

      * imghdr

      * importlib

      * inspect

      * io

      * ipaddress

      * json

      * linecache

      * locale

      * logging

      * lzma

      * math

      * multiprocessing

      * operator

      * os

      * pathlib

      * pickle

      * poplib

      * re

      * readline

      * selectors

      * shutil

      * signal

      * smtpd

      * smtplib

      * sndhdr

      * socket

      * ssl

        * メモリ BIO サポート

        * Application-Layer Protocol Negotiation Support

        * その他の変更

      * sqlite3

      * subprocess

      * sys

      * sysconfig

      * tarfile

      * threading

      * time

      * timeit

      * tkinter

      * traceback

      * types

      * unicodedata

      * unittest

      * unittest.mock

      * urllib

      * wsgiref

      * xmlrpc

      * xml.sax

      * zipfile

    * その他のモジュールレベルの変更

    * 最適化

    * ビルドならびに C API の変更

    * 非推奨

      * 新たなキーワード

      * 非推奨の Python の挙動

      * サポートされないオペレーティングシステム

      * 非推奨の Python モジュール、関数、メソッド

    * 削除

      * API と機能の削除

    * Python 3.5 への移植

      * Python の挙動の変更

      * Python API の変更

      * C API の変更

    * Notable changes in Python 3.5.4

      * New "make regen-all" build target

      * Removal of "make touch" build target

  * What's New In Python 3.4

    * 概要 -- リリースハイライト

    * 新しい機能

      * PEP 453: Python インストール時の PIP の明示的なブートストラッ
        ピング

        * デフォルトでの pip のブートストラッピング

        * ドキュメントの変更

      * PEP 446: 新規作成されたファイル記述子は継承不可

      * Codec 処理の改良

      * PEP 451: インポートシステムのための ModuleSpec 型

      * その他の言語変更

    * 新たなモジュール

      * asyncio

      * ensurepip

      * enum

      * pathlib

      * selectors

      * statistics

      * tracemalloc

    * 改良されたモジュール

      * abc

      * aifc

      * argparse

      * audioop

      * base64

      * collections

      * colorsys

      * contextlib

      * dbm

      * dis

      * doctest

      * email

      * filecmp

      * functools

      * gc

      * glob

      * hashlib

      * hmac

      * html

      * http

      * idlelib と IDLE

      * importlib

      * inspect

      * ipaddress

      * logging

      * marshal

      * mmap

      * multiprocessing

      * operator

      * os

      * pdb

      * pickle

      * plistlib

      * poplib

      * pprint

      * pty

      * pydoc

      * re

      * resource

      * select

      * shelve

      * shutil

      * smtpd

      * smtplib

      * socket

      * sqlite3

      * ssl

      * stat

      * struct

      * subprocess

      * sunau

      * sys

      * tarfile

      * textwrap

      * threading

      * traceback

      * types

      * urllib

      * unittest

      * venv

      * wave

      * weakref

      * xml.etree

      * zipfile

    * CPython の実装の変更

      * PEP 445: CPython のメモリアロケータのカスタマイズ

      * PEP 442: オブジェクトの安全なファイナライゼーション

      * PEP 456: 安全で取り換え可能なハッシュアルゴリズム

      * PEP 436: Argument Clinic

      * その他のビルド並びに C API の変更

      * その他の改善

      * 大幅な最適化

    * 非推奨

      * Python API の非推奨項目

      * 非推奨の機能

    * 削除

      * サポートされなくなったオペレーティングシステム

      * API と機能の削除

      * コードの整理

    * Python 3.4 への移植

      * 'python' コマンドの挙動の変更

      * Python API の変更

      * C API の変更

    * 3.4.3 の変更

      * PEP 476: stdlib http クライアントが証明書の検証を行うのをデフ
        ォルトで有効化

  * What's New In Python 3.3

    * 概要 -- リリースハイライト

    * PEP 405: 仮想環境

    * PEP 420: 暗黙的な名前空間パッケージ

    * PEP 3118: 新たなメモリビューの実装とバッファプロトコルのドキュメ
      ント

      * フィーチャー

      * API の変更

    * PEP 393: 文字列の柔軟な表現

      * 機能性

      * 性能およびリソース使用量

    * PEP 397: Windows の Python ランチャ

    * PEP 3151: OS および IO 例外階層の手直し

    * PEP 380: サブジェネレータへの委譲構文

    * PEP 409: 例外コンテキストの抑制

    * PEP 414: 明示的なユニコードリテラル

    * PEP 3155: クラスと関数の正規名

    * PEP 412: キー共有辞書

    * PEP 362: 関数シグニチャオブジェクト

    * PEP 421: sys.implementation の追加

      * SimpleNamespace

    * インポート実装としての importlib の使用

      * 新たな API

      * 目に見える変化

    * その他の言語変更

    * 細粒度のインポートロック

    * 組み込みの関数と型

    * 新たなモジュール

      * faulthandler

      * ipaddress

      * lzma

    * 改良されたモジュール

      * abc

      * array

      * base64

      * binascii

      * bz2

      * codecs

      * collections

      * contextlib

      * crypt

      * curses

      * datetime

      * decimal

        * フィーチャー

        * API の変更

      * email

        * ポリシーフレームワーク

        * 新規ヘッダ API を伴った暫定ポリシー

        * その他のAPIの変更

      * ftplib

      * functools

      * gc

      * hmac

      * http

      * html

      * imaplib

      * inspect

      * io

      * itertools

      * logging

      * math

      * mmap

      * multiprocessing

      * nntplib

      * os

      * pdb

      * pickle

      * pydoc

      * re

      * sched

      * select

      * shlex

      * shutil

      * signal

      * smtpd

      * smtplib

      * socket

      * socketserver

      * sqlite3

      * ssl

      * stat

      * struct

      * subprocess

      * sys

      * tarfile

      * tempfile

      * textwrap

      * threading

      * time

      * types

      * unittest

      * urllib

      * webbrowser

      * xml.etree.ElementTree

      * zlib

    * 最適化

    * ビルドならびに C API の変更

    * 非推奨

      * サポートされないオペレーティングシステム

      * 非推奨の Python モジュール、関数、メソッド

      * C API の非推奨の関数ならびに型

      * 非推奨の機能

    * Python 3.3 への移植

      * Python コードの移植

      * C コードの移植

      * C 拡張のビルド

      * コマンドラインスイッチの変更

  * What's New In Python 3.2

    * PEP 384: 安定 ABI の定義

    * PEP 389: argparse コマンドライン解析モジュール

    * PEP 391:  logging の辞書ベースの設定

    * PEP 3148:  "concurrent.futures" モジュール

    * PEP 3147:  PYC リポジトリーディレクトリ

    * PEP 3149: ABI バージョンでタグ付けされた .so ファイル

    * PEP 3333: Python Web Server Gateway Interface v1.0.1

    * その他の言語変更

    * 新たなモジュール、改良されたモジュール、非推奨のモジュール

      * email

      * elementtree

      * functools

      * itertools

      * collections

      * threading

      * datetime と time

      * math

      * abc

      * io

      * reprlib

      * logging

      * csv

      * contextlib

      * decimal と fractions

      * ftp

      * popen

      * select

      * gzip と zipfile

      * tarfile

      * hashlib

      * ast

      * os

      * shutil

      * sqlite3

      * html

      * socket

      * ssl

      * nntp

      * certificates

      * imaplib

      * http.client

      * unittest

      * random

      * poplib

      * asyncore

      * tempfile

      * inspect

      * pydoc

      * dis

      * dbm

      * ctypes

      * site

      * sysconfig

      * pdb

      * configparser

      * urllib.parse

      * mailbox

      * turtledemo

    * マルチスレッディング

    * 最適化

    * Unicode 文字列型

    * Codecs

    * ドキュメント

    * IDLE

    * コードリポジトリ

    * ビルドならびに C API の変更

    * Python 3.2 への移植

  * What's New In Python 3.1

    * PEP 372: 順序付き辞書

    * PEP 378: 1000区切りのための書式指定子

    * その他の言語変更

    * 新たなモジュール、改良されたモジュール、非推奨のモジュール

    * 最適化

    * IDLE

    * ビルドならびに C API の変更

    * Python 3.1 への移植

  * What's New In Python 3.0

    * よくある悩みの種

      * print関数

      * リストからビューおよびイテレータへ

      * 順序比較

      * 整数

      * Unicode 対 8 ビット、ではなく、テキスト対データに

    * 構文の変更の概要

      * 新たな構文

      * 変更された構文

      * 削除された操作

    * Python 2.6 で既にあった変更

    * ライブラリの変更

    * **PEP 3101**: 文字列整形の新たなアプローチ

    * 例外に関する変更

    * その他の変更

      * 演算子と特殊メソッド

      * 組み込み

    * ビルドならびに C API の変更

    * 性能

    * Python 3.0 への移植

  * What's New in Python 2.7

    * Python 2.x の今後

    * Deprecation Warnings の扱いの変更

    * Python 3.1 の機能

    * PEP 372: collections に順序付き辞書を追加

    * PEP 378: 1000区切りのための書式指定子

    * PEP 389: コマンドライン解析のための argparse モジュール

    * PEP 391: logging の辞書ベースの設定

    * PEP 3106: 辞書 View

    * PEP 3137: memoryview オブジェクト

    * その他の言語変更

      * インタプリタの変更

      * 最適化

    * 新しいモジュールと改良されたモジュール

      * 新しいモジュール: importlib

      * 新しいモジュール: sysconfig

      * ttk: Tk のテーマ付きウィジェット

      * 更新されたモジュール: unittest

      * 更新されたモジュール: ElementTree 1.3

    * ビルドならびに C API の変更

      * カプセル

      * ポート特有の変更: Windows

      * ポート特有の変更: Mac OS X

      * ポート特有の変更: FreeBSD

    * その他の変更と修正

    * Python 2.7 への移植

    * Python 2.7 メンテナンスリリースで追加された新機能

      * デバッグモード用の2つの新しい環境変数

      * PEP 434: IDLE 拡張についての全てのブランチにおける例外的な扱い

      * PEP 466: Python 2.7 のためのネットワークセキュリティ拡張

      * PEP 477: Python 2.7 への ensurepip (PEP 453) バックポート

        * デフォルトでの pip のブートストラッピング

        * ドキュメントの変更

      * PEP 476: stdlib http クライアントが証明書の検証を行うのをデフ
        ォルトで有効化

      * PEP 493: HTTPS verification migration tools for Python 2.7

      * New "make regen-all" build target

      * Removal of "make touch" build target

    * 謝辞

  * What's New in Python 2.6

    * Python 3.0

    * 開発プロセスに関する変更

      * 新しい課題トラッカー: Roundup

      * 新しいドキュメンテーションフォーマット: Sphinx を使っての
        reStructuredText

    * PEP 343: "with" ステートメント

      * コンテキストマネージャを書く

      * contextlib モジュール

    * PEP 366: メインモジュールからの明示的相対インポート

    * PEP 370: ユーザごとの "site-packages" ディレクトリ

    * PEP 371: "multiprocessing" パッケージ

    * **PEP 3101**: 進化版文字列フォーマッティング

    * PEP 3105: "print" を関数にする

    * PEP 3110: 例外処理の変更

    * PEP 3112: バイトリテラル

    * PEP 3116: 新しい I/O ライブラリ

    * PEP 3118: 改訂版バッファプロトコル

    * PEP 3119: 抽象基底クラス

    * PEP 3127: 整数リテラルのサポートと文法

    * PEP 3129: クラスデコレータ

    * PEP 3141: 数値の型階層

      * "fractions" モジュール

    * その他の言語変更

      * 最適化

      * インタプリタの変更

    * 新しいモジュールと改良されたモジュール

      * "ast" モジュール

      * "future_builtins" モジュール

      * "json" モジュール: JavaScript オブジェクト記法

      * "plistlib" モジュール: プロパティリストパーサ

      * ctypes の強化

      * SSL サポートの改善

    * 非推奨と削除

    * ビルドならびに C API の変更

      * ポート特有の変更: Windows

      * ポート特有の変更: Mac OS X

      * ポート特有の変更: IRIX

    * Python 2.6 への移植

    * 謝辞

  * What's New in Python 2.5

    * PEP 308: 条件式 (Conditional Expressions)

    * PEP 309: 関数の部分適用

    * PEP 314: Metadata for Python Software Packages v1.1

    * PEP 328: 絶対インポート、相対インポート

    * PEP 338 - モジュールをスクリプトとして実行する

    * PEP 341: try/except/finally の一体化

    * PEP 342: ジェネレータの新機能

    * PEP 343: "with" ステートメント

      * コンテキストマネージャを書く

      * contextlib モジュール

    * PEP 352: 例外の新スタイルクラス化

    * PEP 353: 添え字型に ssize_t を使う

    * PEP 357: '__index__' メソッド

    * その他の言語変更

      * 対話的なインタプリタの変更

      * 最適化

    * 新たなモジュール、改良されたモジュール、削除されたモジュール

      * ctypes パッケージ

      * ElementTree パッケージ

      * hashlib パッケージ

      * sqlite3 パッケージ

      * wsgiref パッケージ

    * ビルドならびに C API の変更

      * ポート特有の変更

    * Python 2.5 への移植

    * 謝辞

  * What's New in Python 2.4

    * PEP 218: ビルトインの集合オブジェクト

    * PEP 237: 長整数と整数を一体化していく

    * PEP 289: ジェネレータ式

    * PEP 292: より単純な文字列置換 (string substitution)

    * PEP 318: 関数とメソッドのためのデコレータ

    * PEP 322: 逆順のイテレーション

    * PEP 324: 新しい subprocess モジュール

    * PEP 327: Decimal データ型

      * なぜ Decimal が必要なのか?

      * "Decimal" 型

      * "Context" 型

    * PEP 328: マルチラインインポート

    * PEP 331: Locale に依存しない Float/String 変換

    * その他の言語変更

      * 最適化

    * 新たなモジュール、改良されたモジュール、非推奨のモジュール

      * cookielib

      * doctest

    * ビルドならびに C API の変更

      * ポート特有の変更

    * Python 2.4 への移植

    * 謝辞

  * What's New in Python 2.3

    * PEP 218: 標準の集合データ型

    * PEP 255: 単純なジェネレータ

    * PEP 263: ソースコードのエンコーディング

    * PEP 273: Zip アーカイブからモジュールをインポートする

    * PEP 277: Windows NT での Unicode ファイル名サポート

    * PEP 278: Universal Newline サポート

    * PEP 279: enumerate()

    * PEP 282: ロギングパッケージ

    * PEP 285: Boolean 型

    * PEP 293: コーデックエラーを処理するコールバック

    * PEP 301: パッケージインデクスと、 Distutils のためのメタデータ

    * PEP 302: 新たなインポートフック

    * PEP 305: カンマ区切り形式ファイル

    * PEP 307: Pickle の機能拡張

    * 拡張スライス

    * その他の言語変更

      * 文字列に関する変更

      * 最適化

    * 新たなモジュール、改良されたモジュール、非推奨のモジュール

      * 日付時刻型

      * optparse モジュール

    * Pymalloc: 特殊化されたオブジェクトアロケータ

    * ビルドならびに C API の変更

      * ポート特有の変更

    * その他の変更と修正

    * Python 2.3 への移植

    * 謝辞

  * What's New in Python 2.2

    * はじめに

    * PEP 252 と PEP 253: 型とクラスについての変更

      * 旧と新クラス

      * デスクリプタ

      * 多重継承: ダイヤモンドルール

      * 属性アクセス

      * 関連リンク

    * PEP 234: イテレータ

    * PEP 255: 単純なジェネレータ

    * PEP 237: 長整数と整数を一体化していく

    * PEP 238: 除算演算子を変更していく

    * Unicode の変更

    * PEP 227: 入れ子状のスコープ

    * 新しいモジュールと改良されたモジュール

    * インタプリタの変更と修正

    * その他の変更と修正

    * 謝辞

  * What's New in Python 2.1

    * はじめに

    * PEP 227: 入れ子状のスコープ

    * PEP 236: __future__ 指示文

    * PEP 207: 拡張比較

    * PEP 230: 警告フレームワーク

    * PEP 229: 新しいビルドシステム

    * PEP 205: 弱参照

    * PEP 232: 関数の属性

    * PEP 235: 大文字小文字を区別しないプラットフォームでのモジュール
      の読み込み

    * PEP 217: 対話モード用 Display Hook

    * PEP 208: 新しい型強制モデル

    * PEP 241: Pythonソフトウェアパッケージのためのメタデータ

    * 新しいモジュールと改良されたモジュール

    * その他の変更と修正

    * 謝辞

  * What's New in Python 2.0

    * はじめに

    * Python 1.6 はいかがっすか?

    * 新しい開発プロセス

    * Unicode 文字列型

    * リストの内包表記

    * 累算代入 (Augmented Assignment)

    * 文字列メソッド

    * 循環参照のガベージコレクション

    * その他の言語コアの変更

      * 言語のマイナー変更

      * ビルトイン関数の変更

    * Python 2.0 への移植

    * 拡張と埋め込みについての変更

    * Distutils: モジュールの簡単インストール

    * XML モジュール

      * SAX2 サポート

      * DOM サポート

      * PyXML との関係

    * 更新されたモジュール

    * 新しいモジュール

    * IDLE の改善

    * 削除されたモジュール、非推奨となったモジュール

    * 謝辞

  * 変更履歴

    * Python next

      * テスト

      * Windows

    * Python 3.8.19 final

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * Windows

    * Python 3.8.18 final

      * セキュリティ

      * ライブラリ

      * Tools/Demos

    * Python 3.8.17 final

      * セキュリティ

      * ライブラリ

      * ビルド

      * Windows

      * macOS

    * Python 3.8.16 final

      * セキュリティ

    * Python 3.8.15 final

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * Windows

    * Python 3.8.14 final

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * Windows

    * Python 3.8.13 final

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

    * Python 3.8.12 final

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * Windows

      * macOS

    * Python 3.8.11 final

      * セキュリティ

      * Core and Builtins

      * ライブラリ

    * Python 3.8.10 final

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * Windows

      * macOS

      * IDLE

      * C API

    * Python 3.8.9 final

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * macOS

      * IDLE

    * Python 3.8.8 final

    * Python 3.8.8 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.8.7 final

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * ビルド

      * Tools/Demos

    * Python 3.8.7 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * C API

    * Python 3.8.6 final

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * Windows

      * IDLE

    * Python 3.8.6 release candidate 1

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * Windows

      * IDLE

      * C API

    * Python 3.8.5 final

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * ビルド

      * macOS

      * IDLE

    * Python 3.8.4 final

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * IDLE

    * Python 3.8.4 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

    * Python 3.8.3 final

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * Windows

      * C API

    * Python 3.8.3 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.8.2 final

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * IDLE

    * Python 3.8.2 release candidate 2

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * IDLE

    * Python 3.8.2 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * IDLE

    * Python 3.8.1 final

      * Core and Builtins

      * ライブラリ

      * テスト

      * Windows

      * macOS

      * IDLE

    * Python 3.8.1 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * C API

    * Python 3.8.0 final

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * Windows

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.8.0 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.8.0 beta 4

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.8.0 beta 3

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * IDLE

      * Tools/Demos

    * Python 3.8.0 beta 2

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * C API

    * Python 3.8.0 beta 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.8.0 alpha 4

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.8.0 alpha 3

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.8.0 alpha 2

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * Windows

      * IDLE

    * Python 3.8.0 alpha 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.7.0 final

      * ライブラリ

      * C API

    * Python 3.7.0 release candidate 1

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * ビルド

      * Windows

      * IDLE

    * Python 3.7.0 beta 5

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * macOS

      * IDLE

    * Python 3.7.0 beta 4

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

    * Python 3.7.0 beta 3

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.7.0 beta 2

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

    * Python 3.7.0 beta 1

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * C API

    * Python 3.7.0 alpha 4

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * Windows

      * Tools/Demos

      * C API

    * Python 3.7.0 alpha 3

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.7.0 alpha 2

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * ビルド

      * IDLE

      * C API

    * Python 3.7.0 alpha 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.6.6 final

    * Python 3.6.6 release candidate 1

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.6.5 final

      * テスト

      * ビルド

    * Python 3.6.5 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.6.4 final

    * Python 3.6.4 release candidate 1

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * macOS

      * IDLE

      * Tools/Demos

      * C API

    * Python 3.6.3 final

      * ライブラリ

      * ビルド

    * Python 3.6.3 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * IDLE

      * Tools/Demos

    * Python 3.6.2 final

    * Python 3.6.2 release candidate 2

      * セキュリティ

    * Python 3.6.2 release candidate 1

      * Core and Builtins

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * IDLE

      * C API

      * ビルド

      * ドキュメント

      * Tools/Demos

      * テスト

      * Windows

    * Python 3.6.1 final

      * Core and Builtins

      * ビルド

    * Python 3.6.1 release candidate 1

      * Core and Builtins

      * ライブラリ

      * IDLE

      * Windows

      * C API

      * ドキュメント

      * テスト

      * ビルド

    * Python 3.6.0 final

    * Python 3.6.0 release candidate 2

      * Core and Builtins

      * Tools/Demos

      * Windows

      * ビルド

    * Python 3.6.0 release candidate 1

      * Core and Builtins

      * ライブラリ

      * C API

      * ドキュメント

      * Tools/Demos

    * Python 3.6.0 beta 4

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

    * Python 3.6.0 beta 3

      * Core and Builtins

      * ライブラリ

      * Windows

      * ビルド

      * テスト

    * Python 3.6.0 beta 2

      * Core and Builtins

      * ライブラリ

      * Windows

      * C API

      * ビルド

      * テスト

    * Python 3.6.0 beta 1

      * Core and Builtins

      * ライブラリ

      * IDLE

      * C API

      * テスト

      * ビルド

      * Tools/Demos

      * Windows

    * Python 3.6.0 alpha 4

      * Core and Builtins

      * ライブラリ

      * IDLE

      * テスト

      * Windows

      * ビルド

    * Python 3.6.0 alpha 3

      * Core and Builtins

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * IDLE

      * C API

      * ビルド

      * Tools/Demos

      * ドキュメント

      * テスト

    * Python 3.6.0 alpha 2

      * Core and Builtins

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * IDLE

      * ドキュメント

      * テスト

      * Windows

      * ビルド

      * Windows

      * C API

      * Tools/Demos

    * Python 3.6.0 alpha 1

      * Core and Builtins

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * IDLE

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * Tools/Demos

      * C API

    * Python 3.5.5 final

    * Python 3.5.5 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

    * Python 3.5.4 final

      * ライブラリ

    * Python 3.5.4 release candidate 1

      * セキュリティ

      * Core and Builtins

      * ライブラリ

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * C API

    * Python 3.5.3 final

    * Python 3.5.3 release candidate 1

      * Core and Builtins

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * IDLE

      * C API

      * ドキュメント

      * テスト

      * Tools/Demos

      * Windows

      * ビルド

    * Python 3.5.2 final

      * Core and Builtins

      * テスト

      * IDLE

    * Python 3.5.2 リリース候補 1

      * Core and Builtins

      * セキュリティ

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * セキュリティ

      * ライブラリ

      * IDLE

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * Tools/Demos

      * Windows

    * Python 3.5.1 最終版

      * Core and Builtins

      * Windows

    * Python 3.5.1 release candidate 1

      * Core and Builtins

      * ライブラリ

      * IDLE

      * ドキュメント

      * テスト

      * ビルド

      * Windows

      * Tools/Demos

    * Python 3.5.0 final

      * ビルド

    * Python 3.5.0 release candidate 4

      * ライブラリ

      * ビルド

    * Python 3.5.0 release candidate 3

      * Core and Builtins

      * ライブラリ

    * Python 3.5.0 release candidate 2

      * Core and Builtins

      * ライブラリ

    * Python 3.5.0 release candidate 1

      * Core and Builtins

      * ライブラリ

      * IDLE

      * ドキュメント

      * テスト

    * Python 3.5.0 beta 4

      * Core and Builtins

      * ライブラリ

      * ビルド

    * Python 3.5.0 beta 3

      * Core and Builtins

      * ライブラリ

      * テスト

      * ドキュメント

      * ビルド

    * Python 3.5.0 beta 2

      * Core and Builtins

      * ライブラリ

    * Python 3.5.0 beta 1

      * Core and Builtins

      * ライブラリ

      * IDLE

      * テスト

      * ドキュメント

      * Tools/Demos

    * Python 3.5.0 alpha 4

      * Core and Builtins

      * ライブラリ

      * ビルド

      * テスト

      * Tools/Demos

      * C API

    * Python 3.5.0 alpha 3

      * Core and Builtins

      * ライブラリ

      * ビルド

      * テスト

      * Tools/Demos

    * Python 3.5.0 alpha 2

      * Core and Builtins

      * ライブラリ

      * ビルド

      * C API

      * Windows

    * Python 3.5.0 alpha 1

      * Core and Builtins

      * ライブラリ

      * IDLE

      * ビルド

      * C API

      * ドキュメント

      * テスト

      * Tools/Demos

      * Windows

* Python チュートリアル

  * 1. やる気を高めよう

  * 2. Python インタプリタを使う

    * 2.1. インタプリタを起動する

      * 2.1.1. 引数の受け渡し

      * 2.1.2. 対話モード

    * 2.2. インタプリタとその環境

      * 2.2.1. ソースコードの文字コード

  * 3. 形式ばらない Python の紹介

    * 3.1. Python を電卓として使う

      * 3.1.1. 数

      * 3.1.2. 文字列型 (string)

      * 3.1.3. リスト型 (list)

    * 3.2. プログラミングへの第一歩

  * 4. その他の制御フローツール

    * 4.1. "if" 文

    * 4.2. "for" 文

    * 4.3. "range()" 関数

    * 4.4. "break" 文と "continue" 文とループの "else" 節

    * 4.5. "pass" 文

    * 4.6. 関数を定義する

    * 4.7. 関数定義についてもう少し

      * 4.7.1. デフォルトの引数値

      * 4.7.2. キーワード引数

      * 4.7.3. 特殊なパラメータ

        * 4.7.3.1. 位置またはキーワード引数

        * 4.7.3.2. 位置専用引数

        * 4.7.3.3. キーワード専用引数

        * 4.7.3.4. 関数の例

        * 4.7.3.5. 要約

      * 4.7.4. 任意引数リスト

      * 4.7.5. 引数リストのアンパック

      * 4.7.6. ラムダ式

      * 4.7.7. ドキュメンテーション文字列

      * 4.7.8. 関数のアノテーション

    * 4.8. 間奏曲: コーディングスタイル

  * 5. データ構造

    * 5.1. リスト型についてもう少し

      * 5.1.1. リストをスタックとして使う

      * 5.1.2. リストをキューとして使う

      * 5.1.3. リストの内包表記

      * 5.1.4. ネストしたリストの内包表記

    * 5.2. "del" 文

    * 5.3. タプルとシーケンス

    * 5.4. 集合型

    * 5.5. 辞書型 (dictionary)

    * 5.6. ループのテクニック

    * 5.7. 条件についてもう少し

    * 5.8. シーケンスとその他の型の比較

  * 6. モジュール

    * 6.1. モジュールについてもうすこし

      * 6.1.1. モジュールをスクリプトとして実行する

      * 6.1.2. モジュール検索パス

      * 6.1.3. "コンパイル" された Python ファイル

    * 6.2. 標準モジュール

    * 6.3. "dir()" 関数

    * 6.4. パッケージ

      * 6.4.1. パッケージから * を import する

      * 6.4.2. パッケージ内参照

      * 6.4.3. 複数ディレクトリ中のパッケージ

  * 7. 入力と出力

    * 7.1. 出力を見やすくフォーマットする

      * 7.1.1. フォーマット済み文字列リテラル

      * 7.1.2. 文字列の format() メソッド

      * 7.1.3. 文字列の手作業でのフォーマット

      * 7.1.4. 古い文字列書式設定方法

    * 7.2. ファイルを読み書きする

      * 7.2.1. ファイルオブジェクトのメソッド

      * 7.2.2. "json" による構造化されたデータの保存

  * 8. エラーと例外

    * 8.1. 構文エラー

    * 8.2. 例外

    * 8.3. 例外を処理する

    * 8.4. 例外を送出する

    * 8.5. ユーザー定義例外

    * 8.6. クリーンアップ動作を定義する

    * 8.7. 定義済みクリーンアップ処理

  * 9. クラス

    * 9.1. 名前とオブジェクトについて

    * 9.2. Python のスコープと名前空間

      * 9.2.1. スコープと名前空間の例

    * 9.3. クラス初見

      * 9.3.1. クラス定義の構文

      * 9.3.2. クラスオブジェクト

      * 9.3.3. インスタンスオブジェクト

      * 9.3.4. メソッドオブジェクト

      * 9.3.5. クラスとインスタンス変数

    * 9.4. いろいろな注意点

    * 9.5. 継承

      * 9.5.1. 多重継承

    * 9.6. プライベート変数

    * 9.7. 残りのはしばし

    * 9.8. イテレータ (iterator)

    * 9.9. ジェネレータ (generator)

    * 9.10. ジェネレータ式

  * 10. 標準ライブラリミニツアー

    * 10.1. OSへのインタフェース

    * 10.2. ファイルのワイルドカード表記

    * 10.3. コマンドライン引数

    * 10.4. エラー出力のリダイレクトとプログラムの終了

    * 10.5. 文字列のパターンマッチング

    * 10.6. 数学

    * 10.7. インターネットへのアクセス

    * 10.8. 日付と時刻

    * 10.9. データ圧縮

    * 10.10. パフォーマンスの計測

    * 10.11. 品質管理

    * 10.12. バッテリー同梱

  * 11. 標準ライブラリミニツアー --- その 2

    * 11.1. 出力のフォーマット

    * 11.2. 文字列テンプレート

    * 11.3. バイナリデータレコードの操作

    * 11.4. マルチスレッディング

    * 11.5. ログ記録

    * 11.6. 弱参照

    * 11.7. リスト操作のためのツール

    * 11.8. 10 進浮動小数演算

  * 12. 仮想環境とパッケージ

    * 12.1. はじめに

    * 12.2. 仮想環境の作成

    * 12.3. pip を使ったパッケージ管理

  * 13. さあ何を？

  * 14. 対話入力編集と履歴置換

    * 14.1. タブ補完と履歴編集

    * 14.2. 対話的インタープリタの代替

  * 15. 浮動小数点演算、その問題と制限

    * 15.1. 表現エラー

  * 16. 付録

    * 16.1. 対話モード

      * 16.1.1. エラー処理

      * 16.1.2. 実行可能な Python スクリプト

      * 16.1.3. 対話モード用の起動時実行ファイル

      * 16.1.4. カスタマイズ用モジュール

* Python のセットアップと利用

  * 1. コマンドラインと環境

    * 1.1. コマンドライン

      * 1.1.1. インターフェイスオプション

      * 1.1.2. 一般オプション

      * 1.1.3. その他のオプション

      * 1.1.4. 使うべきでないオプション

    * 1.2. 環境変数

      * 1.2.1. デバッグモード変数

  * 2. Unix プラットフォームで Python を使う

    * 2.1. 最新バージョンの Python の取得とインストール

      * 2.1.1. Linux

      * 2.1.2. FreeBSD と OpenBSD

      * 2.1.3. OpenSolaris

    * 2.2. Python のビルド

    * 2.3. Python に関係するパスとファイル

    * 2.4. その他

  * 3. Windows で Python を使う

    * 3.1. 完全版インストーラ

      * 3.1.1. インストール手順

      * 3.1.2. MAX_PATH の制限を除去する

      * 3.1.3. インストーラの GUI なしでインストールする

      * 3.1.4. ダウンロード不要なインストール

      * 3.1.5. インストール後の変更

    * 3.2. Microsoft ストアパッケージ

      * 3.2.1. 既知の問題

    * 3.3. nuget.org パッケージ

    * 3.4. 埋め込み可能なパッケージ

      * 3.4.1. Python アプリケーション

      * 3.4.2. Python の埋め込み

    * 3.5. 別のバンドル

    * 3.6. Python を構成する

      * 3.6.1. 補足: 環境変数の設定

      * 3.6.2. Python 実行ファイルを見つける

    * 3.7. UTF-8 モード

    * 3.8. Windows の Python ランチャ

      * 3.8.1. 最初に

        * 3.8.1.1. コマンドラインから起動する

        * 3.8.1.2. 仮想環境 (Virtual environments)

        * 3.8.1.3. スクリプトから起動する

        * 3.8.1.4. ファイルの関連付けから起動する

      * 3.8.2. シェバン (shebang) 行

      * 3.8.3. シェバン行の引数

      * 3.8.4. カスタマイズ

        * 3.8.4.1. INI ファイルによるカスタマイズ

        * 3.8.4.2. デフォルトのPythonバージョンのカスタマイズ

      * 3.8.5. 診断

    * 3.9. モジュールの検索

    * 3.10. 追加のモジュール

      * 3.10.1. PyWin32

      * 3.10.2. cx_Freeze

      * 3.10.3. WConio

    * 3.11. Windows 上で Python をコンパイルする

    * 3.12. ほかのプラットフォーム

  * 4. Macintosh で Python を使う

    * 4.1. MacPython の入手とインストール

      * 4.1.1. Python スクリプトの実行方法

      * 4.1.2. GUI でスクリプトを実行

      * 4.1.3. Configuration

    * 4.2. IDE

    * 4.3. 追加の Python パッケージのインストール

    * 4.4. Mac での GUI プログラミング

    * 4.5. Mac 上の Python アプリケーションの配布

    * 4.6. 他のリソース

  * 5. エディタと IDE

* Python 言語リファレンス

  * 1. はじめに

    * 1.1. 別のPythonの実装

    * 1.2. 本マニュアルにおける表記法

  * 2. 字句解析

    * 2.1. 行構造

      * 2.1.1. 論理行 (logical line)

      * 2.1.2. 物理行 (physical line)

      * 2.1.3. コメント (Comments)

      * 2.1.4. エンコード宣言 (encoding declaration)

      * 2.1.5. 明示的な行継続

      * 2.1.6. 非明示的な行継続

      * 2.1.7. 空行

      * 2.1.8. インデント

      * 2.1.9. トークン間の空白

    * 2.2. その他のトークン

    * 2.3. 識別子 (identifier) およびキーワード (keyword)

      * 2.3.1. キーワード (keyword)

      * 2.3.2. 予約済みの識別子種 (reserved classes of identifiers)

    * 2.4. リテラル

      * 2.4.1. 文字列およびバイト列リテラル

      * 2.4.2. 文字列リテラルの結合 (concatenation)

      * 2.4.3. フォーマット済み文字列リテラル

      * 2.4.4. 数値リテラル

      * 2.4.5. 整数リテラル

      * 2.4.6. 浮動小数点数リテラル

      * 2.4.7. 虚数 (imaginary) リテラル

    * 2.5. 演算子

    * 2.6. デリミタ (delimiter)

  * 3. データモデル

    * 3.1. オブジェクト、値、および型

    * 3.2. 標準型の階層

    * 3.3. 特殊メソッド名

      * 3.3.1. 基本的なカスタマイズ

      * 3.3.2. 属性値アクセスをカスタマイズする

        * 3.3.2.1. モジュールの属性値アクセスをカスタマイズする

        * 3.3.2.2. デスクリプタ (descriptor) の実装

        * 3.3.2.3. デスクリプタの呼び出し

        * 3.3.2.4. __slots__

          * 3.3.2.4.1. *__slots__* を利用する際の注意

      * 3.3.3. クラス生成をカスタマイズする

        * 3.3.3.1. メタクラス

        * 3.3.3.2. MRO エントリの解決

        * 3.3.3.3. 適切なメタクラスの決定

        * 3.3.3.4. クラスの名前空間の準備

        * 3.3.3.5. クラス本体の実行

        * 3.3.3.6. クラスオブジェクトの作成

        * 3.3.3.7. メタクラスの用途

      * 3.3.4. インスタンスのカスタマイズとサブクラスチェック

      * 3.3.5. ジェネリック型をエミュレートする

      * 3.3.6. 呼び出し可能オブジェクトをエミュレートする

      * 3.3.7. コンテナをエミュレートする

      * 3.3.8. 数値型をエミュレートする

      * 3.3.9. with文とコンテキストマネージャ

      * 3.3.10. 特殊メソッド検索

    * 3.4. コルーチン

      * 3.4.1. 待機可能オブジェクト (Awaitable Object)

      * 3.4.2. コルーチンオブジェクト

      * 3.4.3. 非同期イテレータ (Asynchronous Iterator)

      * 3.4.4. 非同期コンテキストマネージャ (Asynchronous Context
        Manager)

  * 4. 実行モデル

    * 4.1. プログラムの構造

    * 4.2. 名前づけと束縛 (naming and binding)

      * 4.2.1. 名前の束縛

      * 4.2.2. 名前解決

      * 4.2.3. 組み込みと制限付きの実行

      * 4.2.4. 動的な機能とのやりとり

    * 4.3. 例外

  * 5. インポートシステム

    * 5.1. "importlib"

    * 5.2. パッケージ

      * 5.2.1. 通常のパッケージ

      * 5.2.2. 名前空間パッケージ

    * 5.3. 検索

      * 5.3.1. モジュールキャッシュ

      * 5.3.2. ファインダーとローダー

      * 5.3.3. インポートフック

      * 5.3.4. メタパス

    * 5.4. ロード

      * 5.4.1. ローダー

      * 5.4.2. サブモジュール

      * 5.4.3. モジュール仕様

      * 5.4.4. インポート関連のモジュール属性

      * 5.4.5. module.__path__

      * 5.4.6. モジュールの repr

      * 5.4.7. キャッシュされたバイトコードの無効化

    * 5.5. パスベース・ファインダー

      * 5.5.1. パスエントリ・ファインダー

      * 5.5.2. パスエントリ・ファインダー・プロトコル

    * 5.6. 標準のインポートシステムを置き換える

    * 5.7. Package Relative Imports

    * 5.8. __main__ に対する特別な考慮

      * 5.8.1. __main__.__spec__

    * 5.9. 取り掛かり中の問題

    * 5.10. 参考資料

  * 6. 式 (expression)

    * 6.1. 算術変換 (arithmetic conversion)

    * 6.2. アトム、原子的要素 (atom)

      * 6.2.1. 識別子 (identifier、または名前 (name))

      * 6.2.2. リテラル

      * 6.2.3. 丸括弧形式 (parenthesized form)

      * 6.2.4. リスト、集合、辞書の表示

      * 6.2.5. リスト表示

      * 6.2.6. 集合表示

      * 6.2.7. 辞書表示

      * 6.2.8. ジェネレータ式

      * 6.2.9. Yield 式

        * 6.2.9.1. ジェネレータ-イテレータメソッド

        * 6.2.9.2. 使用例

        * 6.2.9.3. 非同期ジェネレータ関数 (asynchronous generator
          function)

        * 6.2.9.4. 非同期ジェネレータイテレータメソッド

    * 6.3. プライマリ

      * 6.3.1. 属性参照

      * 6.3.2. 添字表記 (subscription)

      * 6.3.3. スライス表記 (slicing)

      * 6.3.4. 呼び出し (call)

    * 6.4. Await 式

    * 6.5. べき乗演算 (power operator)

    * 6.6. 単項算術演算とビット単位演算 (unary arithmetic and bitwise
      operation)

    * 6.7. 二項算術演算 (binary arithmetic operation)

    * 6.8. シフト演算 (shifting operation)

    * 6.9. ビット単位演算の二項演算 (binary bitwise operation)

    * 6.10. 比較

      * 6.10.1. 値の比較

      * 6.10.2. 所属検査演算

      * 6.10.3. 同一性の比較

    * 6.11. ブール演算 (boolean operation)

    * 6.12. 代入式

    * 6.13. 条件式 (Conditional Expressions)

    * 6.14. ラムダ (lambda)

    * 6.15. 式のリスト

    * 6.16. 評価順序

    * 6.17. 演算子の優先順位

  * 7. 単純文 (simple statement)

    * 7.1. 式文 (expression statement)

    * 7.2. 代入文 (assignment statement)

      * 7.2.1. 累算代入文 (augmented assignment statement)

      * 7.2.2. 注釈付き代入文 (annotated assignment statements)

    * 7.3. "assert" 文

    * 7.4. "pass" 文

    * 7.5. "del" 文

    * 7.6. "return" 文

    * 7.7. "yield" 文

    * 7.8. "raise" 文

    * 7.9. "break" 文

    * 7.10. "continue" 文

    * 7.11. "import" 文

      * 7.11.1. future 文 (future statement)

    * 7.12. "global" 文

    * 7.13. "nonlocal" 文

  * 8. 複合文 (compound statement)

    * 8.1. "if" 文

    * 8.2. "while" 文

    * 8.3. "for" 文

    * 8.4. "try" 文

    * 8.5. "with" 文

    * 8.6. 関数定義

    * 8.7. クラス定義

    * 8.8. コルーチン

      * 8.8.1. コルーチン関数定義

      * 8.8.2. "async for" 文

      * 8.8.3. "async with" 文

  * 9. トップレベル要素

    * 9.1. 完全な Python プログラム

    * 9.2. ファイル入力

    * 9.3. 対話的入力

    * 9.4. 式入力

  * 10. 完全な文法仕様

* Python 標準ライブラリ

  * はじめに

    * 利用可能性について

  * 組み込み関数

  * 組み込み定数

    * "site" モジュールで追加される定数

  * 組み込み型

    * 真理値判定

    * ブール演算 --- "and", "or", "not"

    * 比較

    * 数値型 "int", "float", "complex"

      * 整数型におけるビット単位演算

      * 整数型における追加のメソッド

      * 浮動小数点数に対する追加のメソッド

      * 数値型のハッシュ化

    * イテレータ型

      * ジェネレータ型

    * シーケンス型 --- "list", "tuple", "range"

      * 共通のシーケンス演算

      * イミュータブルなシーケンス型

      * ミュータブルなシーケンス型

      * リスト型 (list)

      * タプル型 (tuple)

      * range

    * テキストシーケンス型 --- "str"

      * 文字列メソッド

      * "printf" 形式の文字列書式化

    * バイナリシーケンス型 --- "bytes", "bytearray", "memoryview"

      * バイトオブジェクト

      * bytearray オブジェクト

      * bytes と bytearray の操作

      * "printf" 形式での bytes の書式化

      * メモリビュー

    * set（集合）型 --- "set", "frozenset"

    * マッピング型 --- "dict"

      * 辞書ビューオブジェクト

    * コンテキストマネージャ型

    * その他の組み込み型

      * モジュール (module)

      * クラスおよびクラスインスタンス

      * 関数

      * メソッド

      * コードオブジェクト

      * 型オブジェクト

      * ヌルオブジェクト

      * Ellipsis オブジェクト

      * NotImplemented オブジェクト

      * ブール値

      * 内部オブジェクト

    * 特殊属性

    * Integer string conversion length limitation

      * Affected APIs

      * Configuring the limit

      * Recommended configuration

  * 組み込み例外

    * 基底クラス

    * 具象例外

      * OS 例外

    * 警告

    * 例外のクラス階層

  * テキスト処理サービス

    * "string" --- 一般的な文字列操作

      * 文字列定数

      * カスタムの文字列書式化

      * 書式指定文字列の文法

        * 書式指定ミニ言語仕様

        * 書式指定例

      * テンプレート文字列

      * ヘルパー関数

    * "re" --- 正規表現操作

      * 正規表現のシンタックス

      * モジュールコンテンツ

      * 正規表現オブジェクト

      * マッチオブジェクト

      * 正規表現の例

        * ペアの確認

        * scanf() をシミュレートする

        * search() vs. match()

        * 電話帳を作る

        * テキストの秘匿

        * 全ての副詞を見つける

        * 全ての副詞とその位置を見つける

        * Raw 文字列記法

        * トークナイザを書く

    * "difflib" --- 差分の計算を助ける

      * SequenceMatcherオブジェクト

      * SequenceMatcher の例

      * Differ オブジェクト

      * Differ の例

      * difflib のコマンドラインインタフェース

    * "textwrap" --- テキストの折り返しと詰め込み

    * "unicodedata" --- Unicode データベース

    * "stringprep" --- インターネットのための文字列調製

    * "readline" --- GNU readline のインタフェース

      * 初期化ファイル

      * 行バッファ

      * 履歴ファイル

      * 履歴リスト

      * 開始フック

      * 補完

      * 使用例

    * "rlcompleter" --- GNU readline向け補完関数

      * Completerオブジェクト

  * バイナリデータ処理

    * "struct" --- バイト列をパックされたバイナリデータとして解釈する

      * 関数と例外

      * 書式文字列

        * バイトオーダ、サイズ、アラインメント

        * 書式指定文字

        * 使用例

      * クラス

    * "codecs" --- codec レジストリと基底クラス

      * Codec 基底クラス

        * エラーハンドラ

        * ステートレスなエンコードとデコード

        * インクリメンタルなエンコードとデコード

          * IncrementalEncoder オブジェクト

          * IncrementalDecoder オブジェクト

        * ストリームのエンコードとデコード

          * StreamWriter オブジェクト

          * StreamReader オブジェクト

          * StreamReaderWriter オブジェクト

          * StreamRecoder オブジェクト

      * エンコーディングと Unicode

      * 標準エンコーディング

      * Python 特有のエンコーディング

        * テキストエンコーディング

        * バイナリ変換 (Binary Transforms)

        * テキスト変換 (Text Transforms)

      * "encodings.idna" --- アプリケーションにおける国際化ドメイン名
        (IDNA)

      * "encodings.mbcs" --- Windows ANSI コードページ

      * "encodings.utf_8_sig" --- BOM 印付き UTF-8

  * データ型

    * "datetime" --- 基本的な日付型および時間型

      * Aware オブジェクトと Naive オブジェクト

      * 定数

      * 利用可能なデータ型

        * 共通の特徴

        * オブジェクトが Aware なのか Naive なのかの判断

      * "timedelta" オブジェクト

        * 使用例: "timedelta"

      * "date" オブジェクト

        * 使用例: "date"

      * "datetime" オブジェクト

        * 使用例: "datetime"

      * "time" オブジェクト

        * 使用例: "time"

      * "tzinfo" オブジェクト

      * "timezone" オブジェクト

      * "strftime()" と "strptime()" の振る舞い

        * "strftime()" と "strptime()" の書式コード

        * 技術詳細

    * "calendar" --- 一般的なカレンダーに関する関数群

    * "collections" --- コンテナデータ型

      * "ChainMap" オブジェクト

        * "ChainMap" の例とレシピ

      * "Counter" オブジェクト

      * "deque" オブジェクト

        * "deque" のレシピ

      * "defaultdict" オブジェクト

        * "defaultdict" の使用例

      * "namedtuple()" 名前付きフィールドを持つタプルのファクトリ関数

      * "OrderedDict" オブジェクト

        * "OrderedDict" の例とレシピ

      * "UserDict" オブジェクト

      * "UserList" オブジェクト

      * "UserString" オブジェクト

    * "collections.abc" --- コレクションの抽象基底クラス

      * コレクション抽象基底クラス

    * "heapq" --- ヒープキューアルゴリズム

      * 基本的な例

      * 優先度キュー実装の注釈

      * 理論

    * "bisect" --- 配列二分法アルゴリズム

      * ソート済みリストの探索

      * その他の使用例

    * "array" --- 効率のよい数値アレイ

    * "weakref" --- 弱参照

      * 弱参照オブジェクト

      * 使用例

      * ファイナライザオブジェクト

      * ファイナライザと "__del__()" メソッドとの比較

    * "types" --- 動的な型生成と組み込み型に対する名前

      * 動的な型生成

      * 標準的なインタプリタ型

      * 追加のユーティリティクラスと関数

      * コルーチンユーティリティ関数

    * "copy" --- 浅いコピーおよび深いコピー操作

    * "pprint" --- データ出力の整然化

      * PrettyPrinter オブジェクト

      * 使用例

    * "reprlib" --- もう一つの "repr()" の実装

      * Reprオブジェクト

      * Reprオブジェクトをサブクラス化する

    * "enum" --- 列挙型のサポート

      * モジュールコンテンツ

      * Enum の作成

      * 列挙型メンバーおよびそれらの属性へのプログラム的アクセス

      * 列挙型メンバーと値の重複

      * 番号付けの値が同一であることの確認

      * 値の自動設定を使う

      * イテレーション

      * 比較

      * 列挙型で許されるメンバーと属性

      * Enumのサブクラス化の制限

      * Pickle 化

      * 機能 API

      * 派生列挙型

        * IntEnum

        * IntFlag

        * Flag

        * その他

      * "__init__()"  と "__init__()" のどちらを使うべきか

      * 興味深い例

        * 値の省略

          * "auto" を使う

          * "object" を使う

          * 解説文字列を使う

          * 独自の "__new__()" を使う

        * OrderedEnum

        * DuplicateFreeEnum

        * Planet

        * TimePeriod

      * Enum はどう違うのか?

        * Enum クラス

        * Enum メンバー (インスタンス)

        * 細かい点

          * "__dunder__" 名のサポート

          * "_sunder_" 名のサポート

          * "Enum" メンバー型

          * "Enum" クラスとメンバーの真偽値

          * メソッド付きの "Enum" クラス

          * "Flag" のメンバーの組み合わせ

  * 数値と数学モジュール

    * "numbers" --- 数の抽象基底クラス

      * 数値塔

      * 型実装者のための注意事項

        * さらに数のABCを追加する

        * 算術演算の実装

    * "math" --- 数学関数

      * 数論および数表現の関数

      * 指数関数と対数関数

      * 三角関数

      * 角度変換

      * 双曲線関数

      * 特殊関数

      * 定数

    * "cmath" --- 複素数のための数学関数

      * 極座標変換

      * 指数関数と対数関数

      * 三角関数

      * 双曲線関数

      * 類別関数

      * 定数

    * "decimal" --- 十進固定及び浮動小数点数の算術演算

      * クイックスタートチュートリアル

      * Decimal オブジェクト

        * 論理引数

      * Context オブジェクト

      * 定数

      * 丸めモード

      * シグナル

      * 浮動小数点数に関する注意

        * 精度を上げて丸め誤差を抑制する

        * 特殊値

      * スレッドを使った処理

      * レシピ

      * Decimal FAQ

    * "fractions" --- 有理数

    * "random" --- 擬似乱数を生成する

      * 保守 (bookkeeping) 関数

      * 整数用の関数

      * シーケンス用の関数

      * 実数分布

      * 他の生成器

      * 再現性について

      * 例とレシピ

    * "statistics" --- 数理統計関数

      * 平均及び中心位置の測度

      * 分散の測度

      * 関数の詳細

      * 例外

      * "NormalDist" オブジェクト

        * "NormalDist" の例とレシピ

  * 関数型プログラミング用モジュール

    * "itertools" --- 効率的なループ実行のためのイテレータ生成関数

      * Itertool関数

      * Itertools レシピ

    * "functools" --- 高階関数と呼び出し可能オブジェクトの操作

      * "partial" オブジェクト

    * "operator" --- 関数形式の標準演算子

      * 演算子から関数への対応表

      * インプレース (in-place) 演算子

  * ファイルとディレクトリへのアクセス

    * "pathlib" --- オブジェクト指向のファイルシステムパス

      * 基本的な使い方

      * 純粋パス

        * 全般的な性質

        * 演算子

        * 個別の構成要素へのアクセス

        * メソッドとプロパティ

      * 具象パス

        * メソッド

      * "os" モジュールにあるツールとの対応付け

    * "os.path" --- 共通のパス名操作

    * "fileinput" --- 複数の入力ストリームをまたいだ行の繰り返し処理を
      サポートする

    * "stat" --- "stat()" の結果を解釈する

    * "filecmp" --- ファイルおよびディレクトリの比較

      * "dircmp" クラス

    * "tempfile" --- 一時ファイルやディレクトリの作成

      * 使用例

      * 非推奨の関数と変数

    * "glob" --- Unix 形式のパス名のパターン展開

    * "fnmatch" --- Unix ファイル名のパターンマッチ

    * "linecache" --- テキストラインにランダムアクセスする

    * "shutil" --- 高水準のファイル操作

      * ディレクトリとファイルの操作

        * プラットフォーム依存の効率的なコピー操作

        * copytree の例

        * rmtree の例

      * アーカイブ化操作

        * アーカイブ化の例

        * *base_dir* を使ったアーカイブ化の例

      * 出力ターミナルのサイズの取得

  * データの永続化

    * "pickle" --- Python オブジェクトの直列化

      * 他の Python モジュールとの関係

        * "marshal" との比較

        * "json" との比較

      * データストリームの形式

      * モジュールインタフェース

      * pickle 化、非 pickle 化できるもの

      * クラスインスタンスの pickle 化

        * 外部オブジェクトの永続化

        * ディスパッチテーブル

        * 状態を持つオブジェクトの扱い

      * 型、関数、その他のオブジェクトに対するリダクションのカスタマイ
        ズ

      * アウトオブバウンドバッファ

        * 生産者 API

        * 消費者 API

        * 使用例

      * グローバル変数を制限する

      * 性能

      * 使用例

    * "copyreg" --- "pickle" サポート関数を登録する

      * 使用例

    * "shelve" --- Python オブジェクトの永続化

      * 制限事項

      * 使用例

    * "marshal" --- 内部使用向けの Python オブジェクト整列化

    * "dbm" --- Unix "データベース" へのインタフェース

      * "dbm.gnu" --- GNU による dbm 拡張

      * "dbm.ndbm" --- ndbm に基づくインタフェース

      * "dbm.dumb" --- 可搬性のある DBM 実装

    * "sqlite3" --- SQLite データベースに対する DB-API 2.0 インタフェ
      ース

      * モジュールの関数と定数

      * Connection オブジェクト

      * カーソルオブジェクト

      * Row オブジェクト

      * 例外

      * SQLite と Python の型

        * はじめに

        * 追加された Python の型を SQLite データベースに格納するために
          適合関数を使う

          * オブジェクト自身で適合するようにする

          * 適合関数を登録する

        * SQLite の値を好きな Python 型に変換する

        * デフォルトの適合関数と変換関数

      * トランザクション制御

      * "sqlite3" の効率的な使い方

        * ショートカットメソッドを使う

        * 位置ではなく名前でカラムにアクセスする

        * コネクションをコンテキストマネージャーとして利用する

  * データ圧縮とアーカイブ

    * "zlib" --- **gzip** 互換の圧縮

    * "gzip" --- **gzip** ファイルのサポート

      * 使い方の例

      * コマンドラインインターフェイス

        * コマンドラインオプション

    * "bz2" --- **bzip2** 圧縮のサポート

      * ファイルの圧縮/解凍

      * 逐次圧縮および展開

      * 一括圧縮/解凍

      * 使い方の例

    * "lzma" --- LZMA アルゴリズムを使用した圧縮

      * 圧縮ファイルへの読み書き

      * メモリ上での圧縮と展開

      * その他

      * カスタムフィルタチェインの指定

      * 使用例

    * "zipfile" --- ZIP アーカイブの処理

      * ZipFile オブジェクト

      * Path オブジェクト

      * PyZipFile オブジェクト

      * ZipInfo オブジェクト

      * コマンドラインインターフェイス

        * コマンドラインオプション

      * Decompression pitfalls

        * From file itself

        * File System limitations

        * Resources limitations

        * Interruption

        * Default behaviors of extraction

    * "tarfile" --- tar アーカイブファイルの読み書き

      * TarFile オブジェクト

      * TarInfo オブジェクト

      * Extraction filters

        * Default named filters

        * Filter errors

        * Hints for further verification

        * Supporting older Python versions

        * Stateful extraction filter example

      * コマンドラインインターフェイス

        * コマンドラインオプション

      * 使用例

      * サポートしている tar フォーマット

      * Unicode に関する問題

  * ファイルフォーマット

    * "csv" --- CSV ファイルの読み書き

      * モジュールコンテンツ

      * Dialect クラスと書式化パラメータ

      * reader オブジェクト

      * writer オブジェクト

      * 使用例

    * "configparser" --- 設定ファイルのパーサー

      * クイックスタート

      * サポートされるデータ型

      * 代替値

      * サポートするINI ファイルの構造

      * 値の補間

      * マップ型プロトコルアクセス

      * パーサーの振る舞いをカスタマイズする

      * レガシーな API の例

      * ConfigParser オブジェクト

      * RawConfigParser オブジェクト

      * 例外

    * "netrc" --- netrc ファイルの処理

      * netrc オブジェクト

    * "xdrlib" --- XDR データのエンコードおよびデコード

      * Packer オブジェクト

      * Unpacker オブジェクト

      * 例外

    * "plistlib" --- Mac OS X ".plist" ファイルの生成と解析

      * 使用例

  * 暗号関連のサービス

    * "hashlib" --- セキュアハッシュおよびメッセージダイジェスト

      * ハッシュアルゴリズム

      * SHAKE 可変長ダイジェスト

      * 鍵導出

      * BLAKE2

        * ハッシュオブジェクトの作成

        * 定数

        * 使用例

          * 簡単なハッシュ化

          * Using different digest sizes

          * Keyed hashing

          * Randomized hashing

          * Personalization

          * ツリーモード

        * クレジット:

    * "hmac" --- メッセージ認証のための鍵付きハッシュ化

    * "secrets" --- 機密を扱うために安全な乱数を生成する

      * 乱数

      * トークンの生成

        * トークンは何バイト使うべきか？

      * その他の関数

      * レシピとベストプラクティス

  * 汎用オペレーティングシステムサービス

    * "os" --- 雑多なオペレーティングシステムインタフェース

      * ファイル名、コマンドライン引数、および環境変数

      * プロセスのパラメーター

      * ファイルオブジェクトの生成

      * ファイル記述子の操作

        * ターミナルのサイズの問い合わせ

        * ファイル記述子の継承

      * ファイルとディレクトリ

        * Linux 拡張属性

      * プロセス管理

      * スケジューラーへのインターフェイス

      * 雑多なシステム情報

      * 乱数

    * "io" --- ストリームを扱うコアツール

      * 概要

        * テキスト I/O

        * バイナリ I/O

        * Raw I/O

      * 高水準のモジュールインターフェイス

      * クラス階層

        * I/O 基底クラス

        * 生ファイルI/O

        * バッファ付きストリーム

        * テキスト I/O

      * 性能

        * バイナリ I/O

        * テキスト I/O

        * マルチスレッディング

        * リエントラント性

    * "time" --- 時刻データへのアクセスと変換

      * 関数

      * Clock ID Constants

      * Timezone Constants

    * "argparse" --- コマンドラインオプション、引数、サブコマンドのパ
      ーサー

      * 使用例

        * パーサーを作る

        * 引数を追加する

        * 引数を解析する

      * ArgumentParser オブジェクト

        * "prog"

        * usage

        * description

        * epilog

        * parents

        * formatter_class

        * prefix_chars

        * fromfile_prefix_chars

        * argument_default

        * allow_abbrev

        * conflict_handler

        * add_help

      * add_argument() メソッド

        * name または flags

        * action

        * nargs

        * const

        * default

        * type

        * choices

        * required

        * help

        * metavar

        * dest

        * Action クラス

      * parse_args() メソッド

        * オプション値の文法

        * 不正な引数

        * "-" を含む引数

        * 引数の短縮形 (先頭文字でのマッチング)

        * "sys.argv" 以外

        * Namespace オブジェクト

      * その他のユーティリティ

        * サブコマンド

        * FileType オブジェクト

        * 引数グループ

        * 相互排他

        * パーサーのデフォルト値

        * ヘルプの表示

        * 部分解析

        * ファイル解析のカスタマイズ

        * 終了メソッド

        * 混在した引数の解析

      * optparse からのアップグレード

    * "getopt" --- C 言語スタイルのコマンドラインオプションパーサ

    * "logging" --- Python 用ロギング機能

      * ロガーオブジェクト

      * ロギングレベル

      * ハンドラオブジェクト

      * フォーマッタオブジェクト

      * フィルタオブジェクト

      * LogRecord オブジェクト

      * LogRecord 属性

      * LoggerAdapter オブジェクト

      * スレッドセーフ性

      * モジュールレベルの関数

      * モジュールレベル属性

      * warnings モジュールとの統合

    * "logging.config" --- ロギングの環境設定

      * 環境設定のための関数

      * 環境設定辞書スキーマ

        * 辞書スキーマの詳細

        * 増分設定

        * オブジェクトの接続

        * ユーザ定義オブジェクト

        * 外部オブジェクトへのアクセス

        * 内部オブジェクトへのアクセス

        * インポート解決とカスタムインポーター

      * 環境設定ファイルの書式

    * "logging.handlers" --- ロギングハンドラ

      * StreamHandler

      * FileHandler

      * NullHandler

      * WatchedFileHandler

      * BaseRotatingHandler

      * RotatingFileHandler

      * TimedRotatingFileHandler

      * SocketHandler

      * DatagramHandler

      * SysLogHandler

      * NTEventLogHandler

      * SMTPHandler

      * MemoryHandler

      * HTTPHandler

      * QueueHandler

      * QueueListener

    * "getpass" --- 可搬性のあるパスワード入力機構

    * "curses" --- 文字セル表示を扱うための端末操作

      * 関数

      * Window オブジェクト

      * 定数

    * "curses.textpad" --- curses プログラムのためのテキスト入力ウィジ
      ェット

      * Textbox オブジェクト

    * "curses.ascii" --- ASCII 文字に関するユーティリティ

    * "curses.panel" --- curses のためのパネルスタック拡張

      * 関数

      * Panel オブジェクト

    * "platform" ---  実行中プラットフォームの固有情報を参照する

      * クロスプラットフォーム

      * Java プラットフォーム

      * Windows プラットフォーム

      * Mac OS プラットフォーム

      * Unix プラットフォーム

    * "errno" --- 標準の errno システムシンボル

    * "ctypes" --- Pythonのための外部関数ライブラリ

      * ctypesチュートリアル

        * 動的リンクライブラリをロードする

        * ロードしたdllから関数にアクセスする

        * 関数を呼び出す

        * 基本データ型

        * 続・関数を呼び出す

        * 自作のデータ型とともに関数を呼び出す

        * 要求される引数の型を指定する (関数プロトタイプ)

        * 戻り値の型

        * ポインタを渡す(または、パラメータの参照渡し)

        * 構造体と共用体

        * 構造体/共用体アライメントとバイトオーダー

        * 構造体と共用体におけるビットフィールド

        * 配列

        * ポインタ

        * 型変換

        * 不完全型

        * コールバック関数

        * dllからエクスポートされた値へアクセスする

        * びっくり仰天

        * 可変サイズのデータ型

      * ctypesリファレンス

        * 共有ライブラリを見つける

        * 共有ライブラリをロードする

        * 外部関数

        * 関数プロトタイプ

        * ユーティリティー関数

        * データ型

        * 基本データ型

        * 構造化データ型

        * 配列とポインタ

  * 並行実行

    * "threading" --- スレッドベースの並列処理

      * スレッドローカルデータ

      * Thread オブジェクト

      * Lock オブジェクト

      * RLock オブジェクト

      * Condition オブジェクト

      * Semaphore オブジェクト

        * "Semaphore" の例

      * Event オブジェクト

      * Timer オブジェクト

      * バリアオブジェクト

      * "with" 文でのロック・条件変数・セマフォの使い方

    * "multiprocessing" --- プロセスベースの並列処理

      * はじめに

        * "Process" クラス

        * コンテキストと開始方式

        * プロセス間でのオブジェクト交換

        * プロセス間の同期

        * プロセス間での状態の共有

        * ワーカープロセスのプールを使用

      * リファレンス

        * "Process" クラスと例外

        * パイプ (Pipe) とキュー (Queue)

        * その他

        * Connection オブジェクト

        * 同期プリミティブ

        * 共有 "ctypes" オブジェクト

          * "multiprocessing.sharedctypes" モジュール

        * マネージャー

          * カスタマイズされたマネージャー

          * リモートマネージャーを使用する

        * Proxy オブジェクト

          * クリーンアップ

        * プロセスプール

        * リスナーとクライアント

          * アドレスフォーマット

        * 認証キー

        * ログ記録

        * "multiprocessing.dummy" モジュール

      * プログラミングガイドライン

        * すべての開始方式について

        * 開始方式が *spawn* および *forkserver* の場合

      * 使用例

    * "multiprocessing.shared_memory" --- 異なるプロセスから参照可能な
      共有メモリ

    * "concurrent" パッケージ

    * "concurrent.futures" -- 並列タスク実行

      * Executor オブジェクト

      * ThreadPoolExecutor

        * ThreadPoolExecutor の例

      * ProcessPoolExecutor

        * ProcessPoolExecutor の例

      * Future オブジェクト

      * モジュール関数

      * 例外クラス

    * "subprocess" --- サブプロセス管理

      * "subprocess" モジュールを使う

        * よく使われる引数

        * Popen コンストラクター

        * 例外

      * セキュリティで考慮すべき点

      * Popen オブジェクト

      * Windows Popen ヘルパー

        * Windows Constants

      * 古い高水準 API

      * 古い関数を "subprocess" モジュールで置き換える

        * Replacing **/bin/sh** shell command substitution

        * シェルのパイプラインを置き換える

        * "os.system()" を置き換える

        * "os.spawn" 関数群を置き換える

        * "os.popen()", "os.popen2()", "os.popen3()" を置き換える

        * "popen2" モジュールの関数群を置き換える

      * レガシーなシェル呼び出し関数

      * 注釈

        * Windows における引数シーケンスから文字列への変換

    * "sched" --- イベントスケジューラ

      * スケジューラオブジェクト

    * "queue" --- 同期キュークラス

      * キューオブジェクト

      * SimpleQueue オブジェクト

    * "contextvars" --- コンテキスト変数

      * コンテキスト変数

      * マニュアルでのコンテキスト管理

      * asyncio サポート

    * "_thread" --- 低水準の スレッド API

    * "_dummy_thread" --- "_thread" の代替モジュール

    * "dummy_threading" --- "threading" の代替モジュール

  * ネットワーク通信とプロセス間通信

    * "asyncio" --- 非同期 I/O

      * コルーチンと Task

        * コルーチン

        * Awaitable

        * 非同期プログラムの実行

        * Task の作成

        * スリープ

        * 並行な Task 実行

        * キャンセルからの保護

        * タイムアウト

        * 要素の終了待機

        * 外部スレッドからのスケジュール

        * イントロスペクション

        * Task オブジェクト

        * Generator-based Coroutines

      * ストリーム

        * StreamReader

        * StreamWriter

        * 使用例

          * ストリームを使った TCP Echo クライアント

          * ストリームを使った TCP Echo サーバー

          * HTTP ヘッダーの取得

          * ストリームを使ってデータを待つオープンソケットの登録

      * 同期プリミティブ

        * Lock

        * Event

        * Condition

        * Semaphore

        * BoundedSemaphore

      * サブプロセス

        * サブプロセスの生成

        * 定数

        * サブプロセスとやりとりする

          * サブプロセスとスレッド

          * 使用例

      * キュー

        * Queue

        * 優先度付きのキュー

        * LIFO キュー

        * 例外

        * 使用例

      * 例外

      * イベントループ

        * イベントループのメソッド

          * ループの開始と停止

          * コールバックのスケジューリング

          * 遅延コールバックのスケジューリング

          * フューチャーとタスクの生成

          * ネットワーク接続の確立

          * ネットワークサーバの生成

          * ファイルの転送

          * TLS へのアップグレード

          * ファイル記述子の監視

          * ソケットオブジェクトと直接やりとりする

          * DNS

          * パイプとやりとりする

          * Unix シグナル

          * スレッドまたはプロセスプールでコードを実行する

          * エラーハンドリング API

          * デバッグモードの有効化

          * サブプロセスの実行

        * コールバックのハンドル

        * Serverオブジェクト

        * イベントループの実装

        * 使用例

          * call_soon() を使った Hello World

          * call_later() で現在の日時を表示する

          * 読み込みイベント用ファイル記述子の監視

          * SIGINT および SIGTERM 用のシグナルハンドラーの設定

      * Future

        * Future の関数

        * Future オブジェクト

      * トランスポートとプロトコル

        * トランスポート

          * トランスポートのクラス階層構造

          * 基底トランスポート

          * 読み出し専用のトランスポート

          * 書き込み専用のトランスポート

          * データグラムトランスポート

          * サブプロセス化されたトランスポート

        * プロトコル

          * 基底プロトコル

          * 基底プロトコル

          * ストリーミングプロトコル

          * バッファリングされたストリーミングプロトコル

          * データグラムプロトコル

          * サブプロセスプロトコル

        * 使用例

          * TCP エコーサーバー

          * TCP エコークライアント

          * UDP エコーサーバー

          * UDP エコークライアント

          * 既存のソケットへの接続

          * loop.subprocess_exec() と SubprocessProtocol

      * ポリシー

        * ポリシーの取得と設定

        * ポリシーオブジェクト

        * プロセスのウオッチャー

        * ポリシーのカスタマイズ

      * プラットフォームでのサポート

        * 全てのプラットホーム

        * Windows

          * Windows におけるサブプロセスのサポート

        * macOS

      * 高水準の API インデックス

        * タスク

        * キュー

        * サブプロセス

        * ストリーム

        * 同期

        * 例外

      * 低水準の API インデックス

        * イベントループの取得

        * イベントループのメソッド

        * トランスポート

        * プロトコル

        * イベントループのポリシー

      * asyncio での開発

        * デバッグモード

        * 並行処理とマルチスレッド処理

        * ブロッキングコードの実行

        * ログ記録

        * 待ち受け処理を伴わないコルーチンの検出

        * 回収されない例外の検出

    * "socket" --- 低水準ネットワークインターフェース

      * ソケットファミリー

      * モジュールの内容

        * 例外

        * 定数

        * 関数

          * ソケットの作成

          * その他の関数

      * socket オブジェクト

      * ソケットタイムアウトの注意事項

        * タイムアウトと "connect" メソッド

        * タイムアウトと "accept" メソッド

      * 使用例

    * "ssl" --- ソケットオブジェクトに対する TLS/SSL ラッパー

      * 関数、定数、例外

        * ソケットの作成

        * コンテキストの作成

        * 例外

        * 乱数生成

        * 証明書の取り扱い

        * 定数

      * SSL ソケット

      * SSL コンテキスト

      * 証明書

        * 証明書チェイン

        * CA 証明書

        * 秘密鍵と証明書の組み合わせ

        * 自己署名証明書

      * 使用例

        * SSLサポートをテストする

        * クライアントサイドの処理

        * サーバサイドの処理

      * ノンブロッキングソケットについての注意事項

      * メモリ BIO サポート

      * SSL セッション

      * セキュリティで考慮すべき点

        * 最善のデフォルト値

        * 手動での設定

          * 証明書の検証

          * プロトコルのバージョン

          * 暗号の選択

        * マルチプロセス化

      * TLS 1.3

      * LibreSSL support

    * "select" --- I/O 処理の完了を待機する

      * "/dev/poll" ポーリングオブジェクト

      * エッジおよびレベルトリガポーリング (epoll) オブジェクト

      * ポーリングオブジェクト

      * kqueue オブジェクト

      * kevent オブジェクト

    * "selectors" --- 高水準の I/O 多重化

      * はじめに

      * クラス

      * 使用例

    * "asyncore" --- 非同期ソケットハンドラ

      * asyncoreの例: 簡単なHTTPクライアント

      * 基本的な echo サーバーの例

    * "asynchat" --- 非同期ソケットコマンド/レスポンスハンドラ

      * asynchat 使用例

    * "signal" --- 非同期イベントにハンドラを設定する

      * 一般的なルール

        * Python のシグナルハンドラの実行

        * シグナルとスレッド

      * モジュールの内容

      * 使用例

      * Note on SIGPIPE

    * "mmap" --- メモリマップファイル

      * MADV_* Constants

  * インターネット上のデータの操作

    * "email" --- 電子メールと MIME 処理のためのパッケージ

      * "email.message": 電子メールメッセージの表現

      * "email.parser": 電子メールメッセージのパース

        * FeedParser API

        * Parser API

        * 追記事項

      * "email.generator": MIME 文書の生成

      * "email.policy": ポリシーオブジェクト

      * "email.errors": 例外及び欠陥クラス

      * "email.headerregistry": カスタムヘッダーオブジェクト

      * "email.contentmanager": MIME 内容の管理

        * Content Manager Instances

      * "email": 使用例

      * "email.message.Message": "compat32" API を使用した電子メールメ
        ッセージの表現

      * "email.mime": メールと MIME オブジェクトを一から作成

      * "email.header": 国際化されたヘッダ

      * "email.charset": 文字集合の表現

      * "email.encoders": エンコーダ

      * "email.utils": 多方面のユーティリティ

      * "email.iterators": イテレータ

    * "json" --- JSON エンコーダおよびデコーダ

      * 基本的な使い方

      * エンコーダとデコーダ

      * 例外

      * 標準への準拠と互換性

        * 文字エンコーディング

        * 無限および NaN の数値

        * オブジェクト中に重複した名前の扱い

        * トップレベルの非オブジェクト、非配列の値の扱い

        * 実装の制限

      * コマンドラインインターフェイス

        * コマンドラインオプション

    * "mailcap" --- mailcap ファイルの操作

    * "mailbox" --- 様々な形式のメールボックス操作

      * "Mailbox" オブジェクト

        * "Maildir"

        * "mbox"

        * "MH"

        * "Babyl"

        * "MMDF"

      * "Message" objects

        * "MaildirMessage"

        * "mboxMessage"

        * "MHMessage"

        * "BabylMessage"

        * "MMDFMessage"

      * 例外

      * 使用例

    * "mimetypes" --- ファイル名を MIME 型へマップする

      * Mime 型オブジェクト

    * "base64" --- Base16, Base32, Base64, Base85 データの符号化

    * "binhex" --- binhex4 形式ファイルのエンコードおよびデコード

      * 注釈

    * "binascii" --- バイナリデータと ASCII データとの間での変換

    * "quopri" --- MIME quoted-printable 形式データのエンコードおよび
      デコード

    * "uu" --- uuencode形式のエンコードとデコード

  * 構造化マークアップツール

    * "html" --- HyperText Markup Language のサポート

    * "html.parser"--- HTML および XHTML のシンプルなパーサー

      * HTML パーサーアプリケーションの例

      * "HTMLParser" メソッド

      * 使用例

    * "html.entities" --- HTML 一般実体の定義

    * XMLを扱うモジュール群

      * XML の脆弱性

      * "defusedxml" パッケージ

    * "xml.etree.ElementTree" --- ElementTree XML API

      * チュートリアル

        * XML 木構造と要素

        * XML の解析

        * 非ブロックパースのためのプル API

        * 関心ある要素の検索

        * XML ファイルの編集

        * XML 文書の構築

        * 名前空間のある XML の解析

        * その他の情報

      * XPath サポート

        * 使用例

        * サポートされている XPath 構文

      * リファレンス

        * 関数

      * XInclude サポート

        * 使用例

      * リファレンス

        * 関数

        * Element オブジェクト

        * ElementTree オブジェクト

        * QName オブジェクト

        * TreeBuilder オブジェクト

        * XMLParser オブジェクト

        * XMLPullParser オブジェクト

        * 例外

    * "xml.dom" --- 文書オブジェクトモデル (DOM) API

      * モジュールコンテンツ

      * DOM 内のオブジェクト

        * DOMImplementation オブジェクト

        * Node オブジェクト

        * NodeList オブジェクト

        * DocumentType オブジェクト

        * Document オブジェクト

        * Element オブジェクト

        * Attr オブジェクト

        * NamedNodeMap Objects

        * Comment オブジェクト

        * Text オブジェクトおよび CDATASection オブジェクト

        * ProcessingInstruction オブジェクト

        * 例外

      * 適合性

        * 型の対応付け

        * アクセサメソッド

    * "xml.dom.minidom" --- 最小限の DOM の実装

      * DOM オブジェクト

      * DOM の例

      * minidom と DOM 標準

    * "xml.dom.pulldom" --- 部分的な DOM ツリー構築のサポート

      * DOMEventStream オブジェクト

    * "xml.sax" --- SAX2 パーサのサポート

      * SAXException オブジェクト

    * "xml.sax.handler" --- SAX ハンドラの基底クラス

      * ContentHandler オブジェクト

      * DTDHandler オブジェクト

      * EntityResolver オブジェクト

      * ErrorHandler オブジェクト

    * "xml.sax.saxutils" --- SAX ユーティリティ

    * "xml.sax.xmlreader" --- XML パーサのインタフェース

      * XMLReader オブジェクト

      * IncrementalParser オブジェクト

      * Locator オブジェクト

      * InputSource オブジェクト

      * "Attributes" インタフェース

      * "AttributesNS" インタフェース

    * "xml.parsers.expat" --- Expat を使った高速な XML 解析

      * XMLParser オブジェクト

      * ExpatError 例外

      * 使用例

      * 内容モデルの記述

      * Expat エラー定数

  * インターネットプロトコルとサポート

    * "webbrowser" --- 便利なウェブブラウザコントローラー

      * ブラウザコントローラーオブジェクト

    * "cgi" --- CGI (ゲートウェイインタフェース規格) のサポート

      * はじめに

      * cgi モジュールを使う

      * 高水準インタフェース

      * 関数

      * セキュリティへの配慮

      * CGI スクリプトを Unix システムにインストールする

      * CGI スクリプトをテストする

      * CGI スクリプトをデバッグする

      * よくある問題と解決法

    * "cgitb" --- CGI スクリプトのトレースバック管理機構

    * "wsgiref" --- WSGI ユーティリティとリファレンス実装

      * "wsgiref.util" -- WSGI 環境のユーティリティ

      * "wsgiref.headers" -- WSGI レスポンスヘッダツール群

      * "wsgiref.simple_server" -- シンプルな WSGI HTTP サーバ

      * "wsgiref.validate" --- WSGI 準拠チェッカー

      * "wsgiref.handlers" -- サーバ／ゲートウェイのベースクラス

      * 使用例

    * "urllib" --- URL を扱うモジュール群

    * "urllib.request" --- URL を開くための拡張可能なライブラリ

      * Request オブジェクト

      * OpenerDirector オブジェクト

      * BaseHandler オブジェクト

      * HTTPRedirectHandler オブジェクト

      * HTTPCookieProcessor オブジェクト

      * ProxyHandler オブジェクト

      * HTTPPasswordMgr オブジェクト

      * HTTPPasswordMgrWithPriorAuth オブジェクト

      * AbstractBasicAuthHandler オブジェクト

      * HTTPBasicAuthHandler オブジェクト

      * ProxyBasicAuthHandler オブジェクト

      * AbstractDigestAuthHandler オブジェクト

      * HTTPDigestAuthHandler オブジェクト

      * ProxyDigestAuthHandler オブジェクト

      * HTTPHandler オブジェクト

      * HTTPSHandler オブジェクト

      * FileHandler オブジェクト

      * DataHandler オブジェクト

      * FTPHandler オブジェクト

      * CacheFTPHandler オブジェクト

      * UnknownHandler オブジェクト

      * HTTPErrorProcessor オブジェクト

      * 使用例

      * レガシーインターフェース

      * "urllib.request" の制限事項

    * "urllib.response" --- urllib で使用するレスポンスクラス

    * "urllib.parse" --- URL を解析して構成要素にする

      * URL の解析

      * URL parsing security

      * ASCII エンコードバイト列の解析

      * 構造化された解析結果

      * URL のクオート

    * "urllib.error" --- urllib.request が投げる例外

    * "urllib.robotparser" ---  robots.txt のためのパーザ

    * "http" --- HTTP モジュール群

      * HTTP ステータスコード

    * "http.client" --- HTTP プロトコルクライアント

      * HTTPConnection オブジェクト

      * HTTPResponse オブジェクト

      * 使用例

      * HTTPMessage オブジェクト

    * "ftplib" --- FTPプロトコルクライアント

      * FTP オブジェクト

      * FTP_TLS オブジェクト

    * "poplib" --- POP3 プロトコルクライアント

      * POP3 オブジェクト

      * POP3 の例

    * "imaplib" --- IMAP4 プロトコルクライアント

      * IMAP4 オブジェクト

      * IMAP4 の使用例

    * "nntplib" --- NNTP プロトコルクライアント

      * NNTP オブジェクト

        * 属性

        * メソッド

      * ユーティリティー関数

    * "smtplib" --- SMTP プロトコルクライアント

      * SMTP オブジェクト

      * SMTP 使用例

    * "smtpd" --- SMTP サーバー

      * SMTPServer オブジェクト

      * DebuggingServer オブジェクト

      * PureProxy オブジェクト

      * MailmanProxy Objects

      * SMTPChannel オブジェクト

    * "telnetlib" --- Telnet クライアント

      * Telnet オブジェクト

      * Telnet Example

    * "uuid" --- **RFC 4122** に基づくUUID オブジェクト

      * 使用例

    * "socketserver" --- ネットワークサーバのフレームワーク

      * サーバ生成に関するノート

      * Serverオブジェクト

      * Request Handler Objects

      * 使用例

        * "socketserver.TCPServer" の例

        * "socketserver.UDPServer" の例

        * 非同期処理の Mix-in

    * "http.server" --- HTTP サーバ

      * Security Considerations

    * "http.cookies" --- HTTPの状態管理

      * Cookieオブジェクト

      * Morselオブジェクト

      * 使用例

    * "http.cookiejar" --- HTTP クライアント用の Cookie 処理

      * CookieJar および FileCookieJar オブジェクト

      * FileCookieJar のサブクラスと web ブラウザとの連携

      * CookiePolicy オブジェクト

      * DefaultCookiePolicy オブジェクト

      * Cookieオブジェクト

      * 使用例

    * "xmlrpc" --- XMLRPC サーバーとクライアントモジュール

    * "xmlrpc.client" --- XML-RPC クライアントアクセス

      * ServerProxy オブジェクト

      * DateTime オブジェクト

      * Binary オブジェクト

      * Fault オブジェクト

      * ProtocolError オブジェクト

      * MultiCall オブジェクト

      * 補助関数

      * クライアントのサンプル

      * クライアントとサーバーの利用例

    * "xmlrpc.server" --- 基本的なXML-RPCサーバー

      * SimpleXMLRPCServer オブジェクト

        * SimpleXMLRPCServer の例

      * CGIXMLRPCRequestHandler

      * XMLRPC サーバの文書化

      * DocXMLRPCServer オブジェクト

      * DocCGIXMLRPCRequestHandler

    * "ipaddress" --- IPv4/IPv6 操作ライブラリ

      * 便利なファクトリ関数

      * IP アドレス

        * Address オブジェクト

        * 文字列と整数への変換

        * 演算子

          * 比較演算子

          * 算術演算

      * IP ネットワーク定義

        * プリフィックス, ネットマスク、ホストマスク

        * Network オブジェクト

        * 演算子

          * 論理演算子

          * イテレーション

          * アドレスのコンテナとしてのネットワーク

      * インターフェイスオブジェクト

        * 演算子

          * 論理演算子

      * その他のモジュールレベル関数

      * Custom Exceptions

  * マルチメディアサービス

    * "audioop" --- 生の音声データを操作する

    * "aifc" --- AIFFおよびAIFCファイルの読み書き

    * "sunau" --- Sun AUファイルの読み書き

      * AU_read オブジェクト

      * AU_write オブジェクト

    * "wave" --- WAVファイルの読み書き

      * Wave_read オブジェクト

      * Wave_write オブジェクト

    * "chunk" --- IFFチャンクデータの読み込み

    * "colorsys" --- 色体系間の変換

    * "imghdr" --- 画像の形式を決定する

    * "sndhdr" --- サウンドファイルの識別

    * "ossaudiodev" --- OSS互換オーディオデバイスへのアクセス

      * オーディオデバイスオブジェクト

      * ミキサデバイスオブジェクト

  * 国際化

    * "gettext" --- 多言語対応に関する国際化サービス

      * GNU **gettext** API

      * クラス形式の API

        * "NullTranslations" クラス

        * "GNUTranslations" クラス

        * Solaris メッセージカタログ機構のサポート

        * Catalog コンストラクタ

      * プログラムやモジュールを国際化する

        * モジュールを地域化する

        * アプリケーションを地域化する

        * 動作中 (on the fly) に言語を切り替える

        * 翻訳処理の遅延解決

      * 謝辞

    * "locale" --- 国際化サービス

      * ロケールの背景、詳細、ヒント、助言および補足説明

      * Python 拡張の作者と、Python を埋め込むようなプログラムに関して

      * メッセージカタログへのアクセス

  * プログラムのフレームワーク

    * "turtle" --- タートルグラフィックス

      * はじめに

      * Turtle および Screen のメソッドの概観

        * Turtle のメソッド

        * TurtleScreen/Screen のメソッド

      * RawTurtle/Turtle のメソッドと対応する関数

        * Turtle の動き

        * Turtle の状態を知る

        * 設定と計測

        * Pen の制御

          * 描画状態

          * 色の制御

          * 塗りつぶし

          * さらなる描画の制御

        * タートルの状態

          * 可視性

          * 見た目

        * イベントを利用する

        * 特別な Turtle のメソッド

        * Compound shapes

      * TurtleScreen/Screen のメソッドと対応する関数

        * ウィンドウの制御

        * アニメーションの制御

        * スクリーンイベントを利用する

        * 入力メソッド

        * 設定と特殊なメソッド

        * Screen 独自のメソッド、TurtleScreen から継承したもの以外

      * Public classes

      * ヘルプと設定

        * ヘルプの使い方

        * ドキュメント文字列の翻訳

        * Screen および Turtle の設定方法

      * "turtledemo" --- デモスクリプト

      * python 2.6からの変更点

      * python 3.0からの変更点

    * "cmd" --- 行指向のコマンドインタープリタのサポート

      * Cmdオブジェクト

      * Cmd の例

    * "shlex" --- 単純な字句解析

      * shlex オブジェクト

      * 解析規則

      * Improved Compatibility with Shells

  * Tk を用いたグラフィカルユーザインターフェイス

    * "tkinter" --- Tcl/Tk の Python インタフェース

      * Tkinter モジュール

      * Tkinter お助け手帳

        * この節の使い方

        * 簡単な Hello World プログラム

      * Tcl/Tk を (本当に少しだけ) 見渡してみる

      * 基本的な Tk プログラムと Tkinter との対応関係

      * Tk と Tkinter はどのように関わっているのか

      * 簡単なリファレンス

        * オプションの設定

        * Packer

        * Packer のオプション

        * ウィジェット変数を関連付ける

        * ウィンドウマネージャ

        * Tk オプションデータ型

        * バインドとイベント

        * index パラメータ

        * 画像

      * ファイルハンドラ

    * "tkinter.ttk" --- Tk のテーマ付きウィジェット

      * Ttk を使う

      * Ttk ウィジェット

      * ウィジェット

        * 標準オプション

        * スクロール可能ウィジェットのオプション

        * ラベルオプション

        * 互換性オプション

        * ウィジェットの状態

        * ttk.Widget

      * コンボボックス

        * オプション

        * 仮想イベント

        * ttk.Combobox

      * Spinbox

        * オプション

        * 仮想イベント

        * ttk.Spinbox

      * ノートブック

        * オプション

        * タブオプション

        * タブ識別子

        * 仮想イベント

        * ttk.Notebook

      * プログレスバー

        * オプション

        * ttk.Progressbar

      * セパレータ

        * オプション

      * サイズグリップ

        * プラットフォーム固有のメモ

        * バグ

      * ツリービュー

        * オプション

        * 要素オプション

        * タグオプション

        * カラム識別子

        * 仮想イベント

        * ttk.Treeview

      * Ttk スタイル

        * レイアウト

    * "tkinter.tix" --- Tkの拡張ウィジェット

      * Tixを使う

      * Tixウィジェット

        * 基本ウィジェット

        * ファイルセレクタ

        * 階層的リストボックス

        * 表的リストボックス

        * 管理ウィジェット

        * 画像タイプ

        * その他のウィジェット

        * ジオメトリマネジャを作る

      * Tixコマンド

    * "tkinter.scrolledtext" --- スクロールするテキストウィジェット

    * IDLE

      * メニュー

        * File メニュー (Shell ウィンドウ、Editor ウィンドウ)

        * Edit メニュー (Shell ウィンドウ、Editor ウィンドウ)

        * Format メニュー (Shell ウィンドウ、Editor ウィンドウ)

        * Run メニュー (Editor ウィンドウのみ)

        * Shell メニュー (Shell ウィンドウのみ)

        * Debug メニュー (Shell ウィンドウのみ)

        * Options メニュー (Shell ウィンドウ、Editor ウィンドウ)

        * Window メニュー (Shell ウィンドウ、Editor ウィンドウ)

        * Help メニュー (Shell ウィンドウ、Editor ウィンドウ)

        * コンテキストメニュー

      * 編集とナビゲーション

        * Editor windows

        * Key bindings

        * 自動的な字下げ

        * 補完 (Completions)

        * 呼び出しヒント (Calltips)

        * Code Context

        * Python Shell ウィンドウ

        * テキストの色

      * スタートアップとコードの実行

        * コマンドラインの使い方

        * Startup failure

        * Running user code

        * User output in Shell

        * Developing tkinter applications

        * サブプロセスを起こさずに起動する

      * ヘルプとお好み設定

        * Help sources

        * Setting preferences [お好み設定]

        * IDLE on macOS

        * Extensions [拡張]

    * 他のグラフィカルユーザインタフェースパッケージ

  * 開発ツール

    * "typing" --- 型ヒントのサポート

      * 型エイリアス

      * NewType

      * 呼び出し可能オブジェクト

      * ジェネリクス

      * ユーザー定義のジェネリック型

      * "Any" 型

      * 名前的部分型 vs 構造的部分型

      * クラス、関数、およびデコレータ

    * "pydoc" --- ドキュメント生成とオンラインヘルプシステム

    * "doctest" --- 対話的な実行例をテストする

      * 簡単な利用法: docstring 中の実行例をチェックする

      * 簡単な利用法: テキストファイル中の実行例をチェックする

      * doctest のからくり

        * どの docstring が検証されるのか?

        * docstring 内の実行例をどのように認識するのか?

        * 実行コンテキストとは何か?

        * 例外はどう扱えばよいか?

        * オプションフラグ

        * ディレクティブ (Directives)

        * 警告

      * 基本 API

      * 単体テスト API

      * 拡張 API

        * DocTest オブジェクト

        * Example オブジェクト

        * DocTestFinder オブジェクト

        * DocTestParser オブジェクト

        * DocTestRunner オブジェクト

        * OutputChecker オブジェクト

      * デバッグ

      * アドバイス

    * "unittest" --- ユニットテストフレームワーク

      * 基本的な例

      * コマンドラインインターフェイス

        * コマンドラインオプション

      * テストディスカバリ

      * テストコードの構成

      * 既存テストコードの再利用

      * テストのスキップと予期された失敗

      * サブテストを利用して繰り返しテストの区別を付ける

      * クラスと関数

        * テストクラス

          * 非推奨のエイリアス

        * テストのグループ化

        * テストのロードと起動

          * load_tests プロトコル

      * クラスとモジュールのフィクスチャ

        * setUpClass と tearDownClass

        * setUpModule と tearDownModule

      * シグナルハンドリング

    * "unittest.mock" --- モックオブジェクトライブラリ

      * クイックガイド

      * Mock クラス

        * 呼び出し

        * 属性の削除

        * Mock の名前と name 属性

        * 属性として設定されるモック

      * patcher

        * patch

        * patch.object

        * patch.dict

        * patch.multiple

        * patch のメソッド: start と stop

        * ビルトインをパッチする

        * TEST_PREFIX

        * patch デコレータをネストする

        * どこにパッチするか

        * デスクリプタやプロキシオブジェクトにパッチする

      * MagicMock と magic method のサポート

        * magick method をモックする

        * Magic Mock

      * ヘルパー

        * sentinel

        * DEFAULT

        * call

        * create_autospec

        * ANY

        * FILTER_DIR

        * mock_open

        * autospec を使う

        * Sealing mocks

    * "unittest.mock" --- 入門

      * Mock を使う

        * Mock のパッチ用メソッド

        * オブジェクトのメソッド呼び出しに対するモック

        * クラスをモックする

        * モックに名前をつける

        * 全ての呼び出しのトラッキング

        * 戻り値や属性を設定する

        * モックから例外を発生させる

        * side_effect の関数と iterable

        * 非同期イテレータをモックする

        * 非同期コンテキストマネージャをモックする

        * 既存のオブジェクトから Mock を作る

      * patch デコレータ

      * さらなる例

        * chained call をモックする

        * 部分的なモック

        * ジェネレータ method をモックする

        * 同じパッチを全てのメソッドに適用する

        * Unboundメソッドをモックする

        * モックで複数回の呼び出しをチェックする

        * ミュータブルな引数に対処する

        * patch をネストする

        * MagicMock で辞書をモックする

        * Mock のサブクラスと属性

        * patch.dict で import をモックする

        * Tracking order of calls and less verbose call assertions

        * More complex argument matching

    * 2to3 - Python 2 から 3 への自動コード変換

      * 2to3 の使用

      * 変換プログラム

      * "lib2to3" - 2to3's library

    * "test" --- Python 用回帰テストパッケージ

      * "test" パッケージのためのユニットテストを書く

      * コマンドラインインタフェースを利用してテストを実行する

    * "test.support" --- テストのためのユーティリティ関数

    * "test.support.script_helper" --- Utilities for the Python
      execution tests

  * デバッグとプロファイル

    * Audit events table

    * "bdb" --- デバッガーフレームワーク

    * "faulthandler" --- Python tracebackのダンプ

      * tracebackのダンプ

      * フォールトハンドラの状態

      * タイムアウト後にtracebackをダンプする

      * ユーザシグナルに対してtracebackをダンプする

      * ファイル記述子の問題

      * 使用例

    * "pdb" --- Python デバッガ

      * デバッガコマンド

    * Python プロファイラ

      * プロファイラとは

      * かんたんユーザマニュアル

      * リファレンスマニュアル -- "profile" と "cProfile"

      * "Stats" クラス

      * 決定論的プロファイリングとは

      * 制限事項

      * キャリブレーション (補正)

      * カスタムな時刻取得用関数を使う

    * "timeit" --- 小さなコード断片の実行時間計測

      * 基本的な例

      * Python インターフェイス

      * コマンドラインインターフェイス

      * 使用例

    * "trace" --- Python 文実行のトレースと追跡

      * コマンドラインからの使用

        * 主要なオプション

        * 修飾的オプション

        * フィルターオプション

      * プログラミングインターフェース

    * "tracemalloc" --- メモリ割り当ての追跡

      * 使用例

        * 上位10を表示する

        * 差を計算する

        * メモリブロックのトレースバックを取得する

        * top を整形化する

      * API

        * 関数

        * DomainFilter

        * Filter

        * Frame

        * Snapshot

        * Statistic

        * StatisticDiff

        * Trace

        * Traceback

  * ソフトウェア・パッケージと配布

    * "distutils" --- Python モジュールの構築とインストール

    * "ensurepip" ---  "pip" インストーラのブートストラップ

      * コマンドラインインターフェイス

      * モジュール API

    * "venv" --- 仮想環境の作成

      * 仮想環境の作成

      * API

      * "EnvBuilder" を拡張する例

    * "zipapp" --- 実行可能な Python zip 書庫を管理する

      * 基本的な例

      * コマンドラインインターフェイス

      * Python API

      * 使用例

      * インタープリタの指定

      * Creating Standalone Applications with zipapp

        * Making a Windows executable

        * Caveats

      * The Python Zip Application Archive Format

  * Python ランタイムサービス

    * "sys" --- システムパラメータと関数

    * "sysconfig" --- Python の構成情報にアクセスする

      * 構成変数

      * インストールパス

      * その他の関数

      * "sysconfig" をスクリプトとして使う

    * "builtins" --- 組み込みオブジェクト

    * "__main__" --- トップレベルのスクリプト環境

    * "warnings" --- 警告の制御

      * 警告カテゴリ

      * 警告フィルタ

        * Describing Warning Filters

        * デフォルトの警告フィルタ

        * Overriding the default filter

      * 一時的に警告を抑制する

      * 警告のテスト

      * Updating Code For New Versions of Dependencies

      * 利用可能な関数

      * 利用可能なコンテキストマネージャー

    * "dataclasses" --- データクラス

      * モジュールレベルのデコレータ、クラス、関数

      * 初期化後の処理

      * クラス変数

      * 初期化限定変数

      * 凍結されたインスタンス

      * 継承

      * デフォルトファクトリ関数

      * 可変なデフォルト値

      * 例外

    * "contextlib" --- "with" 文コンテキスト用ユーティリティ

      * ユーティリティ

      * 例とレシピ

        * 可変数個のコンテキストマネージャーをサポートする

        * "__enter__" メソッドからの例外をキャッチする

        * "__enter__" 実装内のクリーンアップ

        * "try-finally" + flag 変数パターンを置き換える

        * コンテキストマネージャーを関数デコレーターとして使う

      * 単回使用、再利用可能、およびリエントラントなコンテキストマネー
        ジャ

        * リエントラントなコンテキストマネージャ

        * 再利用可能なコンテキストマネージャ

    * "abc" --- 抽象基底クラス

    * "atexit" --- 終了ハンドラ

      * "atexit" の例

    * "traceback" --- スタックトレースの表示または取得

      * "TracebackException" オブジェクト

      * "StackSummary" オブジェクト

      * "FrameSummary" オブジェクト

      * トレースバックの例

    * "__future__" --- future 文の定義

    * "gc" --- ガベージコレクタインターフェース

    * "inspect" --- 活動中のオブジェクトの情報を取得する

      * 型とメンバー

      * ソースコードの情報取得

      * Signature オブジェクトで呼び出し可能オブジェクトを内省する

      * クラスと関数

      * インタープリタスタック

      * 属性の静的なフェッチ

      * ジェネレータおよびコルーチンの現在の状態

      * Code Objects Bit Flags

      * コマンドラインインターフェイス

    * "site" --- サイト固有の設定フック

      * readline の設定

      * モジュールの内容

      * コマンドラインインターフェイス

  * カスタム Python インタプリタ

    * "code" --- インタプリタ基底クラス

      * 対話的なインタプリタオブジェクト

      * 対話的なコンソールオブジェクト

    * "codeop" --- Pythonコードをコンパイルする

  * モジュールのインポート

    * "zipimport" --- Zip アーカイブからモジュールを import する

      * zipimporter オブジェクト

      * 使用例

    * "pkgutil" --- パッケージ拡張ユーティリティ

    * "modulefinder" --- スクリプト中で使われているモジュールを検索す
      る

      * "ModuleFinder" の使用例

    * "runpy" --- Python モジュールの位置特定と実行

    * "importlib" --- "import" の実装

      * はじめに

      * 関数

      * "importlib.abc" -- インポートに関連する抽象基底クラス

      * "importlib.resources" -- リソース

      * "importlib.machinery" -- インポータおよびパスフック

      * "importlib.util" -- インポータのためのユーティリティコード

      * 使用例

        * プログラムからのインポート

        * モジュールがインポートできるか確認する

        * ソースファイルから直接インポートする

        * インポーターのセットアップ

        * Approximating "importlib.import_module()"

    * "importlib.metadata" を使う

      * 概要

      * 機能 API

        * エントリポイント

        * 配布物メタデータ

        * 配布物バージョン

        * 配布物ファイル

        * 配布物の要件

      * Distributions

      * 検索アルゴリズムの拡張

  * Python言語サービス

    * "parser" --- Python 解析木にアクセスする

      * ST オブジェクトを作成する

      * ST オブジェクトを変換する

      * ST オブジェクトに対する問い合わせ

      * 例外とエラー処理

      * ST オブジェクト

      * 例: "compile()" のエミュレーション

    * "ast" --- 抽象構文木

      * Node クラス

      * 抽象文法 (Abstract Grammar)

      * "ast" ヘルパー

    * "symtable" --- コンパイラの記号表へのアクセス

      * 記号表の生成

      * 記号表の検査

    * "symbol" --- Python 解析木と共に使われる定数

    * "token" --- Python 解析木と共に使われる定数

    * "keyword" --- Python キーワードチェック

    * "tokenize" --- Pythonソースのためのトークナイザ

      * 入力のトークナイズ

      * コマンドラインからの使用

      * 使用例

    * "tabnanny" --- あいまいなインデントの検出

    * "pyclbr" --- Python モジュールブラウザサポート

      * Function オブジェクト

      * クラスオブジェクト

    * "py_compile" --- Python ソースファイルのコンパイル

    * "compileall" --- Python ライブラリをバイトコンパイル

      * コマンドラインでの使用

      * パブリックな関数

    * "dis" --- Python バイトコードの逆アセンブラ

      * バイトコード解析

      * 解析関数

      * Python バイトコード命令

      * 命令コードコレクション

    * "pickletools" --- pickle 開発者のためのツール群

      * コマンドラインの使い方

        * コマンドラインオプション

      * プログラミングインターフェース

  * 各種サービス

    * "formatter" --- 汎用の出力書式化機構

      * formatter インタフェース

      * formatter 実装

      * writer インタフェース

      * writer 実装

  * MS Windows 固有のサービス

    * "msilib" --- Microsoft インストーラーファイルの読み書き

      * データベースオブジェクト

      * ビューオブジェクト

      * サマリー情報オブジェクト

      * レコードオブジェクト

      * エラー

      * CAB オブジェクト

      * ディレクトリオブジェクト

      * フィーチャー

      * GUI クラス

      * 事前に計算されたテーブル

    * "msvcrt" --- MS VC++実行時システムの有用なルーチン群

      * ファイル操作関連

      * コンソール I/O 関連

      * その多の関数

    * "winreg" --- Windows レジストリへのアクセス

      * 関数

      * 定数

        * HKEY_* 定数

        * アクセス権限

          * 64-bit 特有のアクセス権

        * 値の型

      * レジストリハンドルオブジェクト

    * "winsound" --- Windows 用の音声再生インタフェース

  * Unix 固有のサービス

    * "posix" --- 最も一般的な POSIX システムコール群

      * ラージファイルのサポート

      * 注目すべきモジュールの内容

    * "pwd" --- パスワードデータベースへのアクセスを提供する

    * "spwd" --- シャドウパスワードデータベース

    * "grp" --- グループデータベースへのアクセス

    * "crypt" --- Unix パスワードをチェックするための関数

      * ハッシュ化方式

      * モジュール属性

      * モジュール関数

      * 使用例

    * "termios" --- POSIX スタイルの端末制御

      * 使用例

    * "tty" --- 端末制御のための関数群

    * "pty" --- 擬似端末ユーティリティ

      * 使用例

    * "fcntl" --- "fcntl" および "ioctl" システムコール

    * "pipes" --- シェルパイプラインへのインタフェース

      * テンプレートオブジェクト

    * "resource" --- リソース使用状態の情報

      * リソースの制限

      * リソースの使用状態

    * "nis" --- Sun の NIS (Yellow Pages) へのインタフェース

    * "syslog" --- Unix syslog ライブラリルーチン群

      * 使用例

        * シンプルな例

  * 取って代わられたモジュール群

    * "optparse" --- コマンドラインオプション解析器

      * 背景

        * 用語集

        * オプションとは何か

        * 位置引数とは何か

      * チュートリアル

        * オプション・アクションを理解する

        * store アクション

        * ブール値 (フラグ) オプションの処理

        * その他のアクション

        * デフォルト値

        * ヘルプの生成

          * オプションをグループ化する

        * バージョン番号の出力

        * "optparse" のエラー処理法

        * 全てをつなぎ合わせる

      * リファレンスガイド

        * parserを作る

        * パーザへのオプション追加

        * オプションの定義

        * オプション属性

        * 標準的なオプション・アクション

        * 標準のオプション型

        * 引数を解析する

        * オプション解析器への問い合わせと操作

        * オプション間の衝突

        * クリーンアップ

        * その他のメソッド

      * オプション処理コールバック

        * callbackオプションの定義

        * コールバック関数はどのように呼び出されるか

        * コールバック中で例外を送出する

        * コールバックの例 1: ありふれたコールバック

        * コールバックの例 2: オプションの順番をチェックする

        * コールバックの例 3: オプションの順番をチェックする (汎用的)

        * コールバックの例 4: 任意の条件をチェックする

        * コールバックの例5: 固定引数

        * コールバックの例6: 可変個の引数

      * "optparse" の拡張

        * 新しい型の追加

        * 新しいアクションの追加

    * "imp" --- *import* 内部へのアクセス

      * 使用例

  * ドキュメント化されていないモジュール

    * プラットフォーム固有のモジュール

* Python インタプリタの拡張と埋め込み

  * おすすめのサードパーティツール

  * サードパーティツールなしで拡張を作る

    * 1. C や C++ による Python の拡張

      * 1.1. 簡単な例

      * 1.2. 幕間小話: エラーと例外

      * 1.3. 例に戻る

      * 1.4. モジュールのメソッドテーブルと初期化関数

      * 1.5. コンパイルとリンク

      * 1.6. C から Python 関数を呼び出す

      * 1.7. 拡張モジュール関数でのパラメタ展開

      * 1.8. 拡張モジュール関数のキーワードパラメタ

      * 1.9. 任意の値を構築する

      * 1.10. 参照カウント法

        * 1.10.1. Python における参照カウント法

        * 1.10.2. 所有権にまつわる規則

        * 1.10.3. 薄氷

        * 1.10.4. NULL ポインタ

      * 1.11. C++での拡張モジュール作成

      * 1.12. 拡張モジュールに C API を提供する

    * 2. 拡張の型の定義: チュートリアル

      * 2.1. 基本的なこと

      * 2.2. 基本のサンプルにデータとメソッドを追加する

      * 2.3. データ属性をこまかく制御する

      * 2.4. 循環ガベージコレクションをサポートする

      * 2.5. 他の型のサブクラスを作る

    * 3. Defining Extension Types: Assorted Topics

      * 3.1. ファイナライズとメモリ解放

      * 3.2. オブジェクト表現

      * 3.3. 属性を管理する

        * 3.3.1. 総称的な属性を管理する

        * 3.3.2. 特定の型に特化した属性の管理

      * 3.4. オブジェクトの比較

      * 3.5. 抽象的なプロトコルのサポート

      * 3.6. 弱参照(Weak Reference)のサポート

      * 3.7. その他いろいろ

    * 4. C および C++ 拡張のビルド

      * 4.1. distutils による C および C++ 拡張モジュールのビルド

      * 4.2. 拡張モジュールの配布

    * 5. Windows 上での C および C++ 拡張モジュールのビルド

      * 5.1. 型どおりのアプローチ

      * 5.2. Unix と Windows の相違点

      * 5.3. DLL 使用の実際

  * 大規模なアプリケーションへの Python ランタイムの埋め込み

    * 1. 他のアプリケーションへの Python の埋め込み

      * 1.1. 高水準の埋め込み

      * 1.2. 超高水準の埋め込みから踏み出す: 概要

      * 1.3. 純粋な埋め込み

      * 1.4. 埋め込まれた Python の拡張

      * 1.5. C++による Python の埋め込み

      * 1.6. Unix 系システムにおけるコンパイルとリンク

* Python/C API リファレンスマニュアル

  * はじめに

    * コーディング基準

    * インクルードファイル

    * 便利なマクロ

    * オブジェクト、型および参照カウント

      * 参照カウント法

        * 参照カウントの詳細

      * 型

    * 例外

    * Python の埋め込み

    * デバッグ版ビルド (Debugging Builds)

  * 安定 ABI (Stable Appliction Binary Interface)

  * 超高水準レイヤ

  * 参照カウント

  * 例外処理

    * 出力とクリア

    * 例外の送出

    * 警告

    * エラーインジケータの問い合わせ

    * シグナルハンドリング

    * 例外クラス

    * 例外オブジェクト

    * Unicode 例外オブジェクト

    * 再帰の管理

    * 標準例外

    * 標準警告カテゴリ

  * ユーティリティ

    * オペレーティングシステム関連のユーティリティ

    * システム関数

    * プロセス制御

    * モジュールのインポート

    * データ整列化 (data marshalling) のサポート

    * 引数の解釈と値の構築

      * 引数を解析する

        * 文字列とバッファ

        * 数

        * その他のオブジェクト

        * API 関数

      * 値の構築

    * 文字列の変換と書式化

    * リフレクション

    * codec レジストリとサポート関数

      * コーデック検索API

      * Unicode エラーハンドラ用レジストリ API

  * 抽象オブジェクトレイヤ (abstract objects layer)

    * オブジェクトプロトコル (object protocol)

    * 数値型プロトコル (number protocol)

    * シーケンス型プロトコル (sequence protocol)

    * マップ型プロトコル (mapping protocol)

    * イテレータプロトコル (iterator protocol)

    * バッファプロトコル (buffer Protocol)

      * buffer 構造体

      * バッファリクエストのタイプ

        * リクエストに依存しないフィールド

        * readonly, format

        * shape, strides, suboffsets

        * 隣接性のリクエスト

        * 複合リクエスト

      * 複雑な配列

        * NumPy スタイル: shape, strides

        * PIL スタイル: shape, strides, suboffsets

      * バッファ関連の関数

    * 古いバッファプロトコル

  * 具象オブジェクト (concrete object) レイヤ

    * 基本オブジェクト (fundamental object)

      * 型オブジェクト

        * Creating Heap-Allocated Types

      * "None" オブジェクト

    * 数値型オブジェクト (numeric object)

      * 整数型オブジェクト (integer object)

      * Boolean オブジェクト

      * 浮動小数点型オブジェクト (floating point object)

      * 複素数オブジェクト (complex number object)

        * C 構造体としての複素数

        * Python オブジェクトとしての複素数型

    * シーケンスオブジェクト (sequence object)

      * バイトオブジェクト

      * bytearray オブジェクト

        * 型チェックマクロ

        * ダイレクト API 関数

        * マクロ

      * Unicode オブジェクトと codec

        * Unicode オブジェクト

          * Unicode 型

          * Unicode 文字プロパティ

          * Unicode 文字列の生成とアクセス

          * 廃止予定の Py_UNICODE API群

          * ロケールエンコーディング

          * ファイルシステムエンコーディング

          * wchar_t サポート

        * 組み込み codec (built-in codec)

          * 汎用 codec

          * UTF-8 Codecs

          * UTF-32 Codecs

          * UTF-16 Codecs

          * UTF-7 Codecs

          * Unicode-Escape Codecs

          * Raw-Unicode-Escape Codecs

          * Latin-1 Codecs

          * ASCII Codecs

          * Character Map Codecs

          * Windows 用の MBCS codec

          * メソッドとスロット

        * メソッドおよびスロット関数 (slot function)

      * タプルオブジェクト (tuple object)

      * Struct Sequence オブジェクト

      * リストオブジェクト

    * Container オブジェクト

      * 辞書オブジェクト (dictionary object)

      * Set オブジェクト

    * Function オブジェクト

      * Function オブジェクト

      * インスタンスメソッドオブジェクト(Instance Method Objects)

      * メソッドオブジェクト

      * セルオブジェクト (cell object)

      * コードオブジェクト

    * その他のオブジェクト

      * ファイルオブジェクト

      * モジュールオブジェクト (module object)

        * Cモジュールの初期化

          * 一段階初期化

          * 多段階初期化

          * 低水準モジュール作成関数

          * サポート関数

        * モジュール検索

      * イテレータオブジェクト (iterator object)

      * デスクリプタオブジェクト (descriptor object)

      * スライスオブジェクト (slice object)

      * Ellipsis オブジェクト

      * memoryview オブジェクト

      * 弱参照オブジェクト

      * カプセル

      * ジェネレータオブジェクト

      * コルーチンオブジェクト

      * コンテキスト変数オブジェクト

      * DateTime オブジェクト

  * 初期化 (initialization)、終了処理 (finalization)、スレッド

    * Python 初期化以前

    * グローバルな設定変数

    * インタープリタの初期化と終了処理

    * プロセスワイドのパラメータ

    * スレッド状態 (thread state) とグローバルインタプリタロック
      (global interpreter lock)

      * 拡張コード内で GIL を解放する

      * Python 以外で作られたスレッド

      * Cautions about fork()

      * 高レベルAPI

      * 低レベルAPI

    * サブインタプリタサポート

      * バグと注意事項

    * 非同期通知

    * プロファイルとトレース (profiling and tracing)

    * 高度なデバッガサポート (advanced debugger support)

    * スレッドローカルストレージのサポート

      * スレッド固有ストレージ (Thread Specific Storage, TSS) API

        * 動的メモリ確保

        * メソッド

      * スレッドローカルストレージ (TLS) API

  * Python 初期化設定

    * PyWideStringList

    * PyStatus

    * PyPreConfig

    * Preinitialization with PyPreConfig

    * PyConfig

    * Initialization with PyConfig

    * Isolated Configuration

    * Python Configuration

    * Path Configuration

    * Py_RunMain()

    * Multi-Phase Initialization Private Provisional API

  * メモリ管理

    * 概要

    * 生メモリインタフェース

    * メモリインタフェース

    * オブジェクトアロケータ

    * Default Memory Allocators

    * メモリアロケータをカスタマイズする

    * pymalloc アロケータ

      * pymalloc アリーナアロケータのカスタマイズ

    * tracemalloc C API

    * 使用例

  * オブジェクト実装サポート (object implementation support)

    * オブジェクトをヒープ上にメモリ確保する

    * 共通のオブジェクト構造体 (common object structure)

    * 型オブジェクト

      * クイックリファレンス

        * "tp slots"

        * sub-slots

        * スロットの定義型 (typedef)

      * PyTypeObject 定義

      * PyObject スロット

      * PyVarObject スロット

      * PyTypeObject スロット

      * Heap Types

    * 数値オブジェクト構造体

    * マップオブジェクト構造体

    * シーケンスオブジェクト構造体

    * バッファオブジェクト構造体 (buffer object structure)

    * async オブジェクト構造体

    * Slot Type typedefs

    * 使用例

    * 循環参照ガベージコレクションをサポートする

  * API と ABI のバージョニング

* Python モジュールの配布

  * 重要用語集

  * オープンソースライセンス化とコラボレーション

  * ツールのインストール

  * Python Packaging User Guide を読む

  * どうすればいいの...？

    * ... 私のプロジェクトの名前はどう選べばいいですか?

    * ... バイナリの拡張を作って配布したいのですが?

* Python モジュールのインストール

  * 重要用語集

  * 基本的な使い方

  * どうすればいいの...？

    * ... pip を 3.4 より前のバージョンの Python でインストールするに
      は？

    * ... パッケージを現在のユーザ用のみにインストールするには？

    * ... 科学技術計算用の Python パッケージをインストールするには？

    * ... インストールされた複数のバージョンの Python を並行して使うに
      は？

  * よくあるインストールに関する問題

    * Linux で、システムの Python 内にインストールする

    * pip がインストールされていない

    * バイナリの拡張のインストール

* Python HOWTO

  * Python 2 から Python 3 への移植

    * 短い説明

    * 詳細

      * Python 2.6 とそれ以前のサポートを落とす

      * あなたの "setup.py" ファイルに、相応しいサポートバージョンを明
        記することを忘れないこと

      * 良いテストカバレッジを確保する。

      * Python 2 と 3 の違いを学びましょう。

      * コードをアップデートする。

        * 除算

        * テキスト対バイナリデータ

        * バージョン検出ではなく機能検出を使う

      * 互換性オプション

      * どの依存性があなたの移行を阻んでいるのかチェックする

      * あなたの "setup.py" ファイルを更新して Python 3 互換を謳う

      * 継続的インテグレーションを使って互換性を維持し続ける。

      * Consider using optional static type checking

  * Python 3 への拡張モジュール移植

  * Python で Curses プログラミング

    * curses ってなに?

      * Python の curses module

    * curses アプリケーションの起動と終了

    * ウィンドウとパッド

    * テキストの表示

      * 属性とカラー

    * ユーザ入力

    * より多くの情報

  * デスクリプタ HowTo ガイド

    * 概要

    * 定義と導入

    * デスクリプタプロトコル

    * デスクリプタの呼び出し

    * デスクリプタの例

    * プロパティ

    * 関数とメソッド

    * 静的メソッドとクラスメソッド

  * 関数型プログラミング HOWTO

    * はじめに

      * 形式的証明可能性

      * モジュラー性

      * デバグやテストの簡単さ

      * 結合性

    * イテレータ (iterator)

      * イテレータ対応のデータ型

    * ジェネレータ式とリスト内包表記

    * ジェネレータ (generator)

      * ジェネレータに値を渡す

    * 組み込み関数 (built-in function)

    * itertools モジュール

      * 新しいイテレータを作る

      * 要素に対して関数を呼ぶ

      * 要素を選択する

      * 組合せ関数

      * 要素をグループ分けする

    * functools モジュール

      * operator モジュール

    * 小さな関数とラムダ式

    * 更新履歴と謝辞

    * 参考資料

      * 一般論

      * Python 特有の話

      * Python 文書

  * Logging HOWTO

    * 基本 logging チュートリアル

      * logging を使うとき

      * 簡単な例

      * ファイルへの logging

      * 複数のモジュールからのロギング

      * 変数データのロギング

      * 表示されるメッセージのフォーマットの変更

      * メッセージ内での日付と時刻の表示

      * 次のステップ

    * 上級ロギングチュートリアル

      * Logging Flow

      * ロガー

      * ハンドラ

      * フォーマッタ

      * ロギングの環境設定

      * 環境設定が与えられないとどうなるか

      * ライブラリのためのロギングの設定

    * ロギングレベル

      * カスタムレベル

    * 便利なハンドラ

    * ログ記録中に発生する例外

    * 任意のオブジェクトをメッセージに使用する

    * 最適化

  * Logging クックブック

    * 複数のモジュールで logging を使う

    * 複数のスレッドからのロギング

    * 複数の handler と formatter

    * 複数の出力先にログを出力する

    * 設定サーバの例

    * ブロックする handler を扱う

    * ネットワーク越しの logging イベントの送受信

    * コンテキスト情報をログ記録出力に付加する

      * LoggerAdapter を使ったコンテキスト情報の伝達

        * コンテキスト情報を渡すために dict 以外のオブジェクトを使う

      * Filter を使ったコンテキスト情報の伝達

    * 複数のプロセスからの単一ファイルへのログ記録

      * concurrent.futures.ProcessPoolExecutorの利用

    * ファイルをローテートする

    * 別の format スタイルを利用する

    * "LogRecord" のカスタマイズ

    * QueueHandler を継承する - ZeroMQ を使う例

    * QueueListener のサブクラスを作る - ZeroMQ を使う例

    * 辞書ベースで構成する例

    * rotator と namer を使ってログローテートをカスタマイズする

    * より手の込んだ multiprocessing の例

    * SysLogHandler に送るメッセージに BOM を挿入する

    * 構造化ログを実装する

    * handler を "dictConfig()" を使ってカスタマイズする

    * 固有の書式化スタイルをアプリケーション全体で使う

      * LogRecord ファクトリを使う

      * カスタムなメッセージオブジェクトを使う

    * filter を "dictConfig()" を使ってカスタマイズする

    * 例外の書式化をカスタマイズする

    * ロギングメッセージを喋る

    * ロギングメッセージをバッファリングし、条件に従って出力する

    * 設定によって時刻を UTC(GMT) で書式化する

    * ロギングの選択にコンテキストマネージャを使う

    * CLIアプリケーションスターターテンプレート

    * Qt GUIのログ出力

  * 正規表現 HOWTO

    * はじめに

    * 単純なパターン

      * 文字のマッチング

      * 繰り返し

    * 正規表現を使う

      * 正規表現をコンパイルする

      * バックスラッシュ感染症

      * マッチの実行

      * モジュールレベルの関数

      * コンパイルフラグ

    * パターンの能力をさらに

      * さらなる特殊文字

      * グルーピング

      * 取り出さないグループと名前つきグループ

      * 先読みアサーション (Lookahead Assertions)

    * 文字列を変更する

      * 文字列の分割

      * 検索と置換

    * よくある問題

      * 文字列メソッドを利用する

      * match() 対 search()

      * 貪欲 (greedy) 対非貪欲 (non-greedy)

      * re.VERBOSE の利用

    * フィードバック

  * ソケットプログラミング HOWTO

    * ソケット

      * 歴史

    * ソケットの作成

      * IPC

    * ソケットの利用

      * バイナリデータ

    * 切断

      * ソケットが死ぬと

    * ノンブロッキングソケット

  * ソート HOW TO

    * ソートの基本

    * Key 関数

    * operator モジュール関数

    * 昇順と降順

    * ソートの安定性と複合的なソート

    * デコレート-ソート-アンデコレートを利用した古いやり方

    * *cmp* パラメータを利用した古い方法

    * 残りいくつかとまとめ

  * Unicode HOWTO

    * Unicode 入門

      * 定義

      * エンコーディング

      * 参考資料

    * Python の Unicode サポート

      * 文字列型

      * バイト列への変換

      * Python ソースコード内の Unicode リテラル

      * Unicode プロパティ

      * Comparing Strings

      * Unicode 正規表現

      * 参考資料

    * Unicode データを読み書きする

      * Unicode ファイル名

      * Unicode 対応のプログラムを書くための Tips

        * ファイルエンコーディングの変換

        * 不明なエンコーディングのファイル

      * 参考資料

    * 謝辞

  * urllib パッケージを使ってインターネット上のリソースを取得するには

    * はじめに

    * URL を取得する

      * データ

      * ヘッダ

    * 例外を処理する

      * URLError

      * HTTPError

        * エラーコード

      * エラーをラップする

        * その1

        * その2

    * info と geturl

    * Openers と Handlers

    * Basic 認証

    * プロキシ

    * ソケットとレイヤー

    * 脚注

  * Argparse チュートリアル

    * コンセプト

    * 基礎

    * 位置引数の入門

    * Optional引数の導入

      * 短いオプション

    * 位置引数とOptional引数の併用

    * もうちょっとだけ学ぶ

      * 競合するオプション

    * 結び

  * ipaddressモジュールの紹介

    * アドレス/ネットワーク/インターフェースオブジェクトの作成

      * IPバージョンについての注意

      * IPホストアドレス

      * ネットワークを定義する

      * ホストインタフェース

    * アドレス/ネットワーク/インタフェースオブジェクト

    * アドレスのリストとしてのネットワーク

    * 比較

    * 他のモジュールでIPアドレスを使用する

    * インスタンスの生成に失敗した場合にさらに詳細を取得する

  * Argument Clinic How-To

    * Argument Clinic の目的

    * 基本的な概念と使用法

    * 関数を変換してみよう

    * 高度なトピック

      * シンボルのデフォルト値

      * Argument Clinic が生成した関数と変数をリネームする

      * PyArg_UnpackTuple による関数の変換

      * オプション群

      * Using real Argument Clinic converters, instead of "legacy
        converters"

      * Py_buffer

      * Advanced converters

      * 引数のデフォルト値

      * "NULL" デフォルト値

      * デフォルト値として指定された式

      * Using a return converter

      * 既存関数の複製

      * Python コードの呼び出し

      * "self converter" の利用

      * カスタムコンバータを書く

      * カスタム return コンバータを書く

      * METH_O と METH_NOARGS

      * tp_new と tp_init functions

      * Clinic 出力の変更とリダイレクト

      * #ifdef トリック

      * Python ファイル内での Argument Clinic の利用

  * DTrace と SystemTap で CPython を測定する

    * 静的マーカーの有効化

    * 静的 DTrace プローブ

    * 静的 SystemTap マーカー

    * 利用可能な静的マーカー

    * SystemTap Tapset

    * 使用例

* Python よくある質問

  * 一般 Python FAQ

    * 一般情報

    * 現実世界での Python

  * プログラミング FAQ

    * 一般的な質問

    * コア言語

    * 数と文字列

    * 性能

    * シーケンス(タプル/リスト)

    * オブジェクト

    * モジュール (module)

  * デザインと歴史 FAQ

    * Python はなぜ文のグループ化にインデントを使うのですか？

    * なぜ単純な算術演算が奇妙な結果になるのですか？

    * なんで浮動小数点数の計算はこんなに不正確なんですか？

    * なぜ Python の文字列はイミュータブルなのですか？

    * なぜメソッドの定義や呼び出しにおいて 'self' を明示しなければなら
      ないのですか？

    * 式中で代入ができないのはなぜですか？

    * Python にメソッドを使う機能 (list.index() 等) と関数を使う機能
      (len(list) 等) があるのはなぜですか？

    * join() がリストやタプルのメソッドではなく文字列のメソッドなのは
      なぜですか？

    * 例外はどれくらい速いのですか？

    * Python に switch や case 文がないのはなぜですか？

    * OS 特有のスレッド実装に依らずにインタプリタでスレッドをエミュレ
      ートすることはできないのですか？

    * なぜラムダ式は文を含むことができないのですか?

    * Python は C やその他の言語のように機械語にコンパイルできますか？

    * Python はメモリをどのように管理するのですか？

    * CPython はなぜ伝統的なガベージコレクションスキームを使わないので
      すか？

    * なぜ CPython の終了時にすべてのメモリが解放されるわけではないの
      ですか？

    * なぜタプルとリストという別のデータ型が用意されているのですか？

    * CPythonでリストはどのように実装されているのですか？

    * CPythonで辞書はどのように実装されていますか？

    * なぜ辞書のキーはイミュータブルでなくてはならないのですか？

    * なぜ list.sort() はソートされたリストを返さないのですか？

    * Python ではどのようにインタフェース仕様を特定し適用するのですか
      ？

    * なぜ goto が無いのですか？

    * なぜ raw 文字列 (r-strings) はバックスラッシュで終わってはいけな
      いのですか？

    * 属性の代入に "with" 文が使えないのはなぜですか？

    * if/while/def/class 文にコロンが必要なのはなぜですか？

    * なぜ Python ではリストやタプルの最後にカンマがあっても良いのです
      か？

  * ライブラリと拡張 FAQ

    * ライブラリ一般の質問

    * よくある作業

    * スレッド

    * 入力と出力

    * ネットワーク/インターネットプログラミング

    * データベース

    * 数学と数

  * 拡張と埋め込み FAQ

    * C で独自の関数を作ることはできますか？

    * C++ で独自の関数を作ることはできますか？

    * C を書くのは大変です。他の方法はありませんか？

    * C から任意の Python 文を実行するにはどうしますか？

    * C から任意の Python 式を評価するにはどうしますか？

    * Python オブジェクトから C の値を取り出すにはどうしますか？

    * Py_BuildValue() で任意長のタプルを作るにはどうしますか？

    * C からオブジェクトのメソッドを呼び出すにはどうしますか？

    * PyErr_Print() (その他 stdout/stderr に印字するもの) からの出力を
      受け取るにはどうしますか？

    * C から Python で書かれたモジュールにアクセスするにはどうしますか
      ？

    * Python から C++ へインタフェースするにはどうしますか？

    * セットアップファイルでモジュールを追加しようとしたらメイクに失敗
      しました。なぜですか？

    * 拡張をデバッグするにはどうしますか？

    * Linux システムで Python モジュールをコンパイルしたいのですが、見
      つからないファイルがあります。なぜですか？

    * "不完全 (incomplete) な入力" を "不適切 (invalid) な入力" から区
      別するにはどうしますか？

    * 未定義の g++ シンボル __builtin_new や __pure_virtual を見つける
      にはどうしますか？

    * メソッドのいくつかは C で、その他は Python で実装されたオブジェ
      クトクラスを (継承などで) 作ることはできますか？

  * Windows 上の Python FAQ

    * Python プログラムを Windows で動かすにはどうしますか？

    * Python スクリプトを実行可能にするにはどうしますか？

    * Python の起動に時間がかかることがあるのはなぜですか？

    * どうすれば Python スクリプトを EXE に出来ますか?

    * "*.pyd" ファイルは DLL と同じですか？

    * Python を Windows アプリケーションに埋め込むにはどうしたらいいで
      すか？

    * エディタが Python ソースにタブを勝手に挿入しないようにするにはど
      うしますか？

    * ブロックすることなく押鍵を検出するにはどうしますか？

  * グラフィックユーザインタフェース FAQ

    * 一般的な GUI の質問

    * Python のプラットフォーム非依存の GUI ツールキットには何がありま
      すか？

    * Python のプラットフォーム固有の GUI ツールキットには何があります
      か？

    * Tkinter の質問

  * "なぜ Python が私のコンピュータにインストールされているのですか？"
    FAQ

    * Python とは何ですか？

    * なぜ Python が私のマシンにインストールされているのですか？

    * Python を削除してもいいですか？

* 用語集

* このドキュメントについて

  * Pythonドキュメント 貢献者

* バグへの対処

  * ドキュメントの不備

  * Python の課題管理システムを使う

  * Python への貢献をはじめる

* Copyright

* 歴史とライセンス

  * Python の歴史

  * Terms and conditions for accessing or otherwise using Python

    * PSF LICENSE AGREEMENT FOR PYTHON 3.8.19

    * BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0

    * CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1

    * CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2

    * ZERO-CLAUSE BSD LICENSE FOR CODE IN THE PYTHON 3.8.19
      DOCUMENTATION

  * Licenses and Acknowledgements for Incorporated Software

    * Mersenne Twister

    * ソケット

    * Asynchronous socket services

    * Cookie management

    * Execution tracing

    * UUencode and UUdecode functions

    * XML Remote Procedure Calls

    * test_epoll

    * Select kqueue

    * SipHash24

    * strtod と dtoa

    * OpenSSL

    * expat

    * libffi

    * zlib

    * cfuhash

    * libmpdec

    * W3C C14N test suite
