Pythonクイックリファレンス

[cover photo]
TOPICS
クイックリファレンス , Programming
発行年月日
PRINT LENGTH
744
ISBN
4-87311-177-3
原書
Python in Nutshell
FORMAT
Print
6,490円
この商品は品切れ再入荷未定です

オブジェクト指向のプログラミング言語「Python」はシンプルで習得が容易という特徴を持ち、ソフトウェアのライフサイクルのすべてのフェーズにおいて高い生産性をもたらします。C/C++やJavaで書かれたコンポーネントと結合させることも可能です。本書『Pythonクイックリファレンス』はPythonの概要を素早く学ぶことができるチュートリアルと、標準ライブラリ/拡張モジュールのリファレンスから構成されています。リファレンス部分では、膨大な標準ライブラリから重要なものを厳選し、NumericやTkinterなどの人気の高いサードパーティの拡張モジュールと合わせて紹介します。Pythonの持つ力を最大限に引き出すために、ぜひ手元においておきたい一冊です。Python2.3対応。

目次

目次

まえがき
I部 はじめてのPython
1章 Pythonの概要
        1.1 Python言語
        1.2 Pythonの標準ライブラリと拡張モジュール
        1.3 Pythonの実装
                1.3.1 CPython
                1.3.2 Jython
                1.3.3 CPythonかJythonかの選択
                1.3.4 Python .NET
                1.3.5 ライセンスと価格
        1.4 Pythonの開発とバージョン
        1.5 Pythonに関する資料
                1.5.1 ドキュメント
                1.5.2 ニュースグループとメーリングリスト
                1.5.3 SIG
                1.5.4 PBF
                1.5.5 Python Journal
                1.5.6 拡張モジュールとPythonソース
                1.5.7 Python Cookbook
                1.5.8 書籍
2章 インストール        15
        2.1 ソースコードからのPythonのインストール
                2.1.1 Windows
                2.1.2 Unixベースのプラットフォーム
                2.1.3 Apple Macintosh
        2.2 バイナリからのPythonのインストール
        2.3 Jythonのインストール
3章 Pythonインタープリタ         23
        3.1 Pythonプログラム
                3.1.1 環境変数
                3.1.2 コマンドライン構文とオプション
                3.1.3 対話型セッション
        3.2 Pythonの開発環境
                3.2.1 IDLE
                3.2.2 無償のクロスプラットフォームPython IDE
                3.2.3 プラットフォーム固有の無償のPython IDE
                3.2.4 市販のPython IDE
                3.2.5 Python対応のフリーテキストエディタ
        3.3 Pythonプログラムの実行
        3.4 Jythonインタープリタ
II部 Python言語とビルトイン       33
4章 Python言語      35
        4.1 語彙の構造
                4.1.1 行とインデント
                4.1.2 トークン
                4.1.3 文
        4.2 データ型
                4.2.1 数値
                4.2.2 シーケンス
                4.2.3 ディクショナリ
                4.2.4 None
                4.2.5 呼び出し可能オブジェクト
                4.2.6 論理値
        4.3 変数とその他の参照
                4.3.1 変数
                4.3.2 代入文
                4.3.3 del文
        4.4 式と演算子
        4.5 数値演算
                4.5.1 強制変換と変換
                4.5.2 算術演算
                4.5.3 比較
                4.5.4 整数のビット演算
        4.6 シーケンス演算
                4.6.1 シーケンス全般
                4.6.2 文字列
                4.6.3 タプル
                4.6.4 リスト
        4.7 ディクショナリ演算
                4.7.1 ディクショナリのメンバシップ
                4.7.2 ディクショナリのインデックス
                4.7.3 ディクショナリのメソッド
        4.8 プリント文
        4.9 制御フロー文
                4.9.1 if文
                4.9.2 while文
                4.9.3 for文
                4.9.4 break文
                4.9.5 continue文
                4.9.6 ループ文のelse句
                4.9.7 pass文
                4.9.8 try文
        4.10 関数
                4.10.1 def文
                4.10.2 パラメータ
                4.10.3 関数オブジェクトの属性
                4.10.4 return文
                4.10.5 関数呼び出し
                4.10.6 名前空間
                4.10.7 lambda式
                4.10.8 ジェネレータ
                4.10.9 再帰
5章 オブジェクト指向のPython       83
        5.1 従来のクラスとインスタンス
                5.1.1 class文
                5.1.2 クラスのボディ
                5.1.3 インスタンス
                5.1.4 属性参照の基礎
                5.1.5 結合メソッドと非結合メソッド
                5.1.6 継承
        5.2 新しいスタイルのクラスとインスタンス
                5.2.1 objectビルトイン型
                5.2.2 クラスレベルのメソッド
                5.2.3 新しいスタイルのクラス
                5.2.4 新しいスタイルのインスタンス
                5.2.5 新しいスタイルのオブジェクトモデルにおける継承
        5.3 特殊メソッド
                5.3.1 汎用の特殊メソッド
                5.3.2 コンテナの特殊メソッド
                5.3.3 数値オブジェクトのための特殊メソッド
        5.4 メタクラス
                5.4.1 Pythonによるメタクラスの決定方法
                5.4.2 メタクラスによるクラスの作成方法
6章 例外
        6.1 try文
                6.1.1 try/except
                6.1.2 try/finally
        6.2 例外の伝達
        6.3 raise文
        6.4 例外オブジェクト
                6.4.1 標準例外の階層
                6.4.2 標準例外クラス
        6.5 カスタム例外クラス
        6.6 エラーチェック戦略
                6.6.1 大きなプログラムでのエラー処理
                6.6.2 エラーログ
                6.6.3 assert文
                6.6.4 __debug__ビルトイン変数
7章 モジュール         141
        7.1 モジュールオブジェクト
                7.1.1 import文
                7.1.2 from文
        7.2 モジュールのロード
                7.2.1 ビルトインモジュール
                7.2.2 ファイルシステムでのモジュールの検索
                7.2.3 メインプログラム
                7.2.4 reload関数
                7.2.5 循環インポート
                7.2.6 sys.modulesのエントリ
                7.2.7 カスタムインポート
        7.3 パッケージ
        7.4 ディストリビューションユーティリティ(distutils)
8章 基本的なビルトイン     155
        8.1 ビルトイン型
        8.2 ビルトイン関数
        8.3 sysモジュール
        8.4 getoptモジュール
        8.5 copyモジュール
        8.6 bisectモジュール
        8.7 UserListモジュール、UserDictモジュール、UserStringモジュール
9章 文字列と正規表現      177
        9.1 文字列オブジェクトのメソッド
        9.2 stringモジュール
                9.2.1 ロケールセンシティビティ
                9.2.2 maketrans関数
        9.3 文字列のフォーマット
                9.3.1 フォーマット指定子の構文
                9.3.2 一般的な文字列フォーマットのイディオム
        9.4 pprintモジュール
        9.5 reprモジュール
        9.6 Unicode
                9.6.1 codecsモジュール
                9.6.2 unicodedataモジュール
        9.7 正規表現とreモジュール
                9.7.1 パターン文字列の構文
                9.7.2 一般的な正規表現のイディオム
                9.7.3 文字セット
                9.7.4 選択肢
                9.7.5 グループ
                9.7.6 オプションフラグ
                9.7.7 マッチングと検索
                9.7.8 文字列の先頭と末尾のアンカー
                9.7.9 正規表現オブジェクト
                9.7.10 マッチオブジェクト
                9.7.11 reモジュールの関数
III部 Pythonライブラリと拡張モジュール         207
10章 ファイルとテキストの操作         209
        10.1 osモジュール
                10.1.1 OSError例外
                10.1.2 errnoモジュール
        10.2 ファイルシステムの操作
                10.2.1 osモジュールのパス文字列属性
                10.2.2 アクセス許可
                10.2.3 osモジュールのファイル/ディレクトリ関数
                10.2.4 os.pathモジュール
                10.2.5 statモジュール
                10.2.6 filecmpモジュール
                10.2.7 shutilモジュール
                10.2.8 ファイルデスクリプタの操作
        10.3 ファイルオブジェクト
                10.3.1 openでのファイルオブジェクトの生成
                10.3.2 ファイルオブジェクトの属性とメソッド
                10.3.3 ファイルオブジェクトでの反復
                10.3.4 ファイル形式のオブジェクトとポリモーフィズム
        10.4 ファイルI/Oのための補助モジュール
                10.4.1 fileinputモジュール
                10.4.2 linecacheモジュール
                10.4.3 structモジュール
                10.4.4 xreadlinesモジュール
        10.5 StringIOモジュールとcStringIOモジュール
        10.6 圧縮ファイル
                10.6.1 gzipモジュール
                10.6.2 zipfileモジュール
                10.6.3 zlibモジュール
        10.7 テキストの入出力
                10.7.1 標準出力と標準エラー
                10.7.2 print文
                10.7.3 標準入力
                10.7.4 getpassモジュール
        10.8 高度なテキストI/O
                10.8.1 readlineモジュール
                10.8.2 コンソールI/O
        10.9 対話型のコマンドセッション
                10.9.1 Cmdインスタンスのメソッド
                10.9.2 Cmdインスタンスの属性
                10.9.3 Cmdの例
        10.10 国際化
                10.10.1 localeモジュール
                10.10.2 gettextモジュール
11章 永続性とデータベース   271
        11.1 直列化
                11.1.1 marshalモジュール
                11.1.2 pickleモジュールとcPickleモジュール
                11.1.3 shelveモジュール
        11.2 DBMモジュール
                11.2.1 anydbmモジュール
                11.2.2 dumbdbmモジュール
                11.2.3 dbmモジュール、gdbmモジュール、dbhashモジュール
                11.2.4 whichdbモジュール
                11.2.5 DBM形式のファイルの使用例
        11.3 Berkeley DBモジュール
                11.3.1 Berkeley DBの使用例
        11.4 Python DBAPI 2.0
                11.4.1 例外クラス
                11.4.2 スレッドセーフ
                11.4.3 パラメータのスタイル
                11.4.4 ファクトリ関数
                11.4.5 型情報属性
                11.4.6 connect関数
                11.4.7 接続オブジェクト
                11.4.8 カーソルオブジェクト
                11.4.9 DBAPI準拠のモジュール
                11.4.10 Gadfly
12章 時間の操作        299
        12.1 timeモジュール
        12.2 schedモジュール
        12.3 calendarモジュール
        12.4 mx.DateTimeモジュール
                12.4.1 日付と時刻の型
                12.4.2 DateTime型
                12.4.3 DateTimeDelta型
                12.4.4 その他の属性
                12.4.5 サブモジュール
13章 実行の制御        317
        13.1 動的な実行とexec文
                13.1.1 execを使用しない
                13.1.2 実行の制限
                13.1.3 式
                13.1.4 コンパイルとコードオブジェクト
        13.2 制限された実行
                13.2.1 rexecモジュール
                13.2.2 Bastionモジュール
        13.3 内部型
                13.3.1 型オブジェクト
                13.3.2 コードオブジェクト型
                13.3.3 フレーム型
        13.4 ガーベージコレクション
                13.4.1 gcモジュール
                13.4.2 weakrefモジュール
        13.5 終了関数
        13.6 サイトとユーザーのカスタマイズ
                13.6.1 siteモジュールとsitecustomizeモジュール
                13.6.2 ユーザーのカスタマイズ
14章 スレッドとプロセス    337
        14.1 Pythonのスレッド
        14.2 threadモジュール
        14.3 Queueモジュール
        14.4 threadingモジュール
                14.4.1 Threadオブジェクト
                14.4.2 スレッド同期オブジェクト
        14.5 スレッドプログラムアーキテクチャ
        14.6 プロセス環境
        14.7 ほかのプログラムの実行
        14.8 mmapモジュール
                14.8.1 mmapオブジェクトのメソッド
                14.8.2 mmapオブジェクトによるIPC
15章 数値処理         361
        15.1 mathモジュールとcmathモジュール
        15.2 operatorモジュール
        15.3 randomモジュール
        15.4 arrayモジュール
        15.5 Numericパッケージ
        15.6 配列オブジェクト
                15.6.1 型コード
                15.6.2 シェイプとインデックス
                15.6.3 記憶域
                15.6.4 スライス
                15.6.5 真理値
                15.6.6 ファクトリ関数
                15.6.7 属性とメソッド
                15.6.8 配列の演算
                15.6.9 関数
        15.7 ユニバーサル関数(ufunc)
                15.7.1 オプションの出力引数
                15.7.2 呼び出し可能属性
                15.7.3 Numericが提供するufuncオブジェクト
                15.7.4 よく使用されるufuncメソッドの省略表記
        15.8 オプションの数値モジュール
16章 Tkinter GUI  399
        16.1 Tkinterの基礎
        16.2 ウィジェットの基礎
                16.2.1 ウィジェットの共通オプション
                16.2.2 ウィジェットの共通メソッド
                16.2.3 Tkinter変数オブジェクト
                16.2.4 Tkinterイメージ
        16.3 よく使用される簡単なウィジェット
                16.3.1 Button
                16.3.2 Checkbutton
                16.3.3 Entry
                16.3.4 Label
                16.3.5 Listbox
                16.3.6 Radiobutton
                16.3.7 Scale
                16.3.8 Scrollbar
        16.4 コンテナウィジェット
                16.4.1 Frame
                16.4.2 Toplevel
        16.5 メニューウィジェット
                16.5.1 メニュー固有のメソッド
                16.5.2 メニューエントリ
                16.5.3 メニューの例
        16.6 テキストウィジェット
                16.6.1 テキストウィジェットのメソッド
                16.6.2 テキストのスクロールバーの表示
                16.6.3 マーク
                16.6.4 タグ
                16.6.5 インデックス
                16.6.6 フォント
                16.6.7 テキストの例
        16.7 キャンバスウィジェット
                16.7.1 アイテム関連のキャンバスメソッド
                16.7.2 lineアイテム
                16.7.3 polygonアイテム
                16.7.4 rectangleアイテム
                16.7.5 textアイテム
                16.7.6 簡単なプロッティングの例
        16.8 ジオメトリの管理
                16.8.1 Packer
                16.8.2 Gridder
                16.8.3 Placer
        16.9 Tkinterイベント
                16.9.1 イベントオブジェクト
                16.9.2 イベントへのコールバックの結合
                16.9.3 イベント名
                16.9.4 イベント関連のメソッド
                16.9.5 イベントの例
                16.9.6 コールバック関連のその他のメソッド
17章 テスト、デバッグ、最適化         451
        17.1 テスト
                17.1.1 単体テストとシステムテスト
                17.1.2 doctestモジュール
                17.1.3 unittestモジュール
        17.2 デバッグ
                17.2.1 inspectモジュール
                17.2.2 tracebackモジュール
                17.2.3 pdbモジュール
                17.2.4 IDLEでのデバッグ
        17.3 warningsモジュール
                17.3.1 クラス
                17.3.2 オブジェクト
                17.3.3 フィルタ
                17.3.4 関数
        17.4 最適化
                17.4.1 十分に高速なPythonアプリケーションの開発
                17.4.2 ベンチマーク
                17.4.3 大規模な最適化
                17.4.4 プロファイリング
                17.4.5 小規模な最適化
IV部 ネットワークとWebプログラミング    493
18章 クライアント側のネットワークプロトコルモジュール     495
        18.1 URLアクセス
                18.1.1 urlparseモジュール
                18.1.2 urllibモジュール
                18.1.3 urllib2モジュール
        18.2 電子メールプロトコル
                18.2.1 poplibモジュール
                18.2.2 smtplibモジュール
        18.3 HTTPプロトコルとFTPプロトコル
                18.3.1 httplibモジュール
                18.3.2 ftplibモジュール
        18.4 Network News
                18.4.1 レスポンス文字列
                18.4.2 メソッド
                18.4.3 例
        18.5 Telnet
        18.6 分散コンピューティング
19章 ソケットとサーバー側のネットワークプロトコルモジュール  525
        19.1 socketモジュール
                19.1.1 socket関数
                19.1.2 socketクラス
                19.1.3 TCPソケットを使用するエコーサーバーとクライアント
                19.1.4 UDPソケットを使用するエコーサーバーとクライアント
                19.1.5 timeoutsocketモジュール
        19.2 SocketServerモジュール
                19.2.1 BaseRequestHandlerクラス
                19.2.2 HTTPサーバー
        19.3 イベントドリブンのソケットプログラム
                19.3.1 selectモジュール
                19.3.2 asyncoreモジュールとasynchatモジュール
                19.3.3 Twistedフレームワーク
20章 CGIスクリプティングとその他の手法   553
        20.1 PythonでのCGI
                20.1.1 フォーム送信メソッド
                20.1.2 cgiモジュール
                20.1.3 CGIの出力とエラー
                20.1.4 Python CGIスクリプトのインストール
        20.2 クッキー
                20.2.1 Cookieモジュール
        20.3 その他のサーバー側の手法
                20.3.1 FastCGI
                20.3.2 LRWP
                20.3.3 PyApacheとmod_python
                20.3.4 Webware
                20.3.5 Quixote
                20.3.6 純粋なカスタムPythonサーバー
21章 MIMEとネットワークエンコーディング  571
        21.1 テキストとしてのバイナリデータのエンコーディング
                21.1.1 base64モジュール
                21.1.2 quopriモジュール
                21.1.3 uuモジュール
        21.2 MIMEと電子メールフォーマットの処理
                21.2.1 emailパッケージの関数
                21.2.2 email.Messageモジュール
                21.2.3 email.Generatorモジュール
                21.2.4 メッセージの作成
                21.2.5 email.Encodersモジュール
                21.2.6 email.Utilsモジュール
                21.2.7 rfc822モジュールとmimetoolsモジュールのMessageクラス
22章 構造化テキスト:HTML         587
        22.1 sgmllibモジュール
        22.2 htmllibモジュール
                22.2.1 formatterモジュール
                22.2.2 htmlentitydefsモジュール
                22.2.3 htmllibによるHTMLの解析
        22.3 HTMLParserモジュール
        22.4 HTMLの生成
                22.4.1 埋め込み
                22.4.2 テンプレート化
                22.4.3 Cheetahパッケージ
23章 構造化テキスト:XML  603
        23.1 XML解析の概要
        23.2 SAXによるXMLの解析
                23.2.1 xml.saxパッケージ
                23.2.2 xml.saxによるXHTMLの解析
        23.3 DOMによるXMLの解析
                23.3.1 xml.domパッケージ
                23.3.2 xml.dom.minidomモジュール
                22.3.3 xml.dom.minidomによるXHTMLの解析
                22.3.4 xml.dom.pulldomモジュール
                23.3.5 xml.dom.pulldomによるXHTMLの解析
        23.4 XMLの変更と生成
                23.4.1 Documentオブジェクトのファクトリメソッド
                23.4.2 Elementオブジェクトの可変メソッド
                23.4.3 Nodeオブジェクトの可変メソッド
                23.4.4 Nodeオブジェクトの出力メソッド
                23.4.5 xml.dom.minidomによるXHTMLの変更と出力
V部 拡張と埋め込み       625
24章 Pythonの拡張と埋め込み       627
        24.1 PythonのC APIによるPythonの拡張
                24.1.1 CでコーディングされたPython拡張のビルドとインストール
                24.1.2 CでコーディングされたPython拡張モジュールの概要
                24.1.3 PythonのC API関数の戻り値
                24.1.4 モジュールの初期化
                24.1.5 参照カウント
                24.1.6 引数へのアクセス
                24.1.7 Python値の作成
                21.4.8 例外
                24.1.9 抽象層の関数
                24.1.10 具象層の関数
                24.1.11 簡単な拡張の例
                24.1.12 新しい型の定義
        24.2 PythonのC APIを使用しないPythonの拡張
        24.3 Pythonの埋め込み
                24.3.1 常駐拡張モジュールのインストール
                24.3.2 引数の設定
                24.3.3 Pythonの初期化と終了処理
                24.3.4 Pythonコードの実行
25章 Jythonの拡張と埋め込み       669
        25.1 JythonでのJavaパッケージのインポート
                25.1.1 Jythonレジストリ
                25.1.2 アクセス制限
                25.1.3 型変換
                25.1.4 Javaクラスのサブクラス化
                25.1.5 JavaBeans
        25.2 JavaでのJythonの埋め込み
                25.2.1 PythonInterpreterクラス
                25.2.2 PyObjectクラス
                25.2.3 Pyクラス
        25.3 PythonからJavaへのコンパイル
                25.3.1 jythoncコマンド
                25.3.2 Javaに公開されるメソッドの追加
                25.3.3 Pythonアプレットとサーブレット
26章 拡張とプログラムの配布  681
        26.1 Pythonのdistutils
                26.1.1 ディストリビューションとそのルート
                26.1.2 setup.pyスクリプト
                26.1.3 ディストリビューションのメタデータ
                26.1.4 ディストリビューションの内容
                26.1.5 setup.cfgファイル
                26.1.6 MANIFEST.inファイルとMANIFESTファイル
                26.1.7 distutilsによるプリビルドディストリビューションの作成
        26.2 py2exeツール
        26.3 Installerツール

索引