Python文法詳解

[cover photo]
  • 2014年09月 発行
  • 332ページ
  • ISBN978-4-87311-688-4
  • フォーマット Print PDF

オライリー・ジャパンで書籍を購入:
定価3,456円

Ebook Storeで電子版を購入:
価格2,765円

Python Enhancement Proposals(PEP) 3138の執筆者でもある日本人著者が、プログラミング言語としてのPythonの文法や、組み込みのオブジェクトに焦点を絞って解説する書籍。最新のPythonを深く理解し、使いこなすために必要な基礎を知る1冊。シンプルさを特長とし、できるだけ機能を絞り、覚えやすく、使いやすい言語をモットーとしてきたPythonが、20年にわたる進歩の結果として得た高機能さと複雑さの中から、入門書やチュートリアルではあまり触れられないその内部や仕組みに関するトピックを盛り込んでいます。本書によって、最新のPythonを深く理解し、使いこなすために必要な基礎を知ることができるでしょう。

著者による正誤表

関連書籍

Pythonによるデータ分析入門
入門 自然言語処理
初めてのPython 第3版

はじめに

第1章 イントロダクション
    1.1 Python の特徴
        1.1.1 読みやすさ
        1.1.2 シンプル
        1.1.3 高レベル言語
        1.1.4 Batteries included
        1.1.5 マルチプラットフォーム
        1.1.6 拡張と組み込み
    1.2 Pythonの歴史
    1.3 Monty Python's Flying Circus
    1.4 Pythonの処理系

第2章 Pythonの実行
    2.1 Python を実行してみる
        2.1.1 Pythonスクリプトの実行
        2.1.2 Pythonスクリプトファイル
        2.1.3 スクリプトファイルの文字コード
        2.1.4 Pythonスクリプトの構造
    2.2 基本データ型
    2.3 式と代入文
    2.4 比較演算子
    2.5 辞書オブジェクト
    2.6 リストとタプル
    2.7 シーケンスのアクセス
    2.8 if ... elif ... else 文
    2.9 ループ
    2.10 イテラブルオブジェクト
    2.11 関数
    2.12 クラス
    2.13 モジュール
    2.14 入出力

第3章 式とデータ型
    3.1 Pythonのデータ型
    3.2 Pythonのオブジェクト
        3.2.1 オブジェクトのメソッドと属性
    3.3 Noneオブジェクト
    3.4 Ellipsisオブジェクト
    3.5 関数の呼び出し
    3.6 代入文
        3.6.1 変数と参照
        3.6.2 要素の分解
        3.6.3 del 文
        3.6.4 累算代入文
    3.7 変数名
    3.8 演算子
        3.8.1 算術演算子
        3.8.2 論理演算子
        3.8.3 比較演算子
        3.8.4 条件演算子
    3.9 数値型
        3.9.1 数値型の算術演算子
        3.9.2 除算と整数除算
        3.9.3 自動型変換
        3.9.4 その他の演算
        3.9.5 数値型のメソッドと属性
    3.10 整数
        3.10.1 int型
        3.10.2 整数のメソッド
    3.11 論理値
        3.11.1 bool型
    3.12 整数のビット操作
        3.12.1 負の整数のビット操作
        3.12.2 ビット反転演算子
        3.12.3 シフト演算子
    3.13 浮動小数点数
        3.13.1 float型
        3.13.2 inf と nan
        3.13.3 浮動小数点数のメソッド
    3.14 複素数
        3.14.1 complex型
    3.15 10進浮動小数点数
        3.15.1 decimal.Decimal型
        3.15.2 コンテキスト
        3.15.3 inf と nan

第4章 シーケンスとコンテナ型
    4.1 シーケンス
        4.1.1 添字によるアクセス
        4.1.2 スライス
        4.1.3 シーケンス要素の代入文
        4.1.4 要素の削除
        4.1.5 シーケンスの演算子
    4.2 リスト
        4.2.1 リストの要素
        4.2.2 リスト内包
        4.2.3 リストの演算子
        4.2.4 list型
        4.2.5 リストのメソッド
    4.3 タプル
        4.3.1 タプルの演算子
        4.3.2 tuple型
        4.3.3 タプルのメソッド
        4.3.4 リストとタプル
    4.4 文字列型とバイト型
    4.5 文字列
        4.5.1 エスケープシーケンス
        4.5.2 raw 文字列
        4.5.3 str 型
        4.5.4 文字列の演算子
        4.5.5 文字の列挙
        4.5.6 文字列のメソッド
        4.5.7 format() メソッドのフォーマット指定文字列
    4.6 バイト列
        4.6.1 bytes型
        4.6.2 バイト列の演算子
        4.6.3 バイト値の列挙
        4.6.4 バイト列のメソッド
    4.7 bytearray型
        4.7.1 bytearrayのメソッド
    4.8 辞書オブジェクト
        4.8.1 要素の操作
        4.8.2 辞書のキー
        4.8.3 辞書内包
        4.8.4 辞書の演算子
        4.8.5 dict型
        4.8.6 要素の列挙とビューオブジェクト
        4.8.7 辞書のメソッド
    4.9 集合オブジェクト
        4.9.1 集合内包
        4.9.2 要素の列挙
        4.9.3 集合の演算子
        4.9.4 set型
        4.9.5 集合のメソッド
        4.9.6 frozenset型

第5章 ステートメント
    5.1 if 文
        5.1.1 pass文
    5.2 while文
        5.2.1 break文
        5.2.2 else節
    5.3 for文
    5.4 continue文
    5.5 例外処理
        5.5.1 例外型
        5.5.2 raise文
        5.5.3 例外の連結
        5.5.4 トレースバックオブジェクト
    5.6 assert文
    5.7 with 文

第6章 関数とクラス
    6.1 関数定義
        6.1.1 可変長引数
        6.1.2 キーワード専用引数
        6.1.3 デフォルト引数
        6.1.4 ドキュメンテーション文字列
        6.1.5 関数アノテーション
        6.1.6 lambda式
    6.2 モジュールとパッケージ
        6.2.1 モジュールの内容
        6.2.2 グローバル変数とローカル変数
        6.2.3 import文
        6.2.4 モジュール検索パス
        6.2.5 パッケージ
        6.2.6 名前空間パッケージ
        6.2.7 モジュールの実行
        6.2.8 __main__ モジュール
        6.2.9 コンパイル済みモジュールファイル
    6.3 名前空間とスコープ
        6.3.1 グローバル名前空間
        6.3.2 ローカル名前空間
        6.3.3 ローカルスコープのネスト
        6.3.4 名前空間の参照
        6.3.5 文字列のintern
    6.4 クラス
        6.4.1 属性
        6.4.2 インスタンスの作成と解放
        6.4.3 継承
        6.4.4 プライベートメンバ
        6.4.5 クラスブロックとスコープ
        6.4.6 インスタンスの名前空間
        6.4.7 メタプログラミング
    6.5 デコレータ
        6.5.1 ラッパ関数を作成するデコレータ
        6.5.2 関数呼び出し形式のデコレータ
        6.5.3 複数のデコレータ
        6.5.4 functools.wrapsデコレータ
        6.5.5 クラスデコレータ

第7章 データ型とプロトコル
    7.1 ファイル入出力
        7.1.1 テキストファイルの読み書き
        7.1.2 バイナリファイルの読み書き
        7.1.3 行単位の読み込み
        7.1.4 標準入出力
        7.1.5 ファイルのクローズ
        7.1.6 ファイルクラス
    7.2 オブジェクトの文字列表現
        7.2.1 ascii()
        7.2.2 文字列表現のカスタマイズ
        7.2.3 対話コンソールでのrepr()
    7.3 イテレータ
        7.3.1 イテラブルなオブジェクト
        7.3.2 リバースイテレータ
    7.4 ジェネレータ
        7.4.1 ジェネレータのメソッド
        7.4.2 サブジェネレータ
        7.4.3 ジェネレータ式
    7.5 コンテキストマネージャ
        7.5.1 contextlib.contextmanager()
    7.6 ディスクリプタ
        7.6.1 データディスクリプタと非データディスクリプタ
        7.6.2 メソッドオブジェクト
        7.6.3 classmethodとstaticmethod
        7.6.4 property
    7.7 抽象基底クラス
        7.7.1 abc.ABCMetaクラス
        7.7.2 抽象メソッド
    7.8 特殊メソッド
        7.8.1 二項演算子
        7.8.2 単項演算子
        7.8.3 比較演算子
        7.8.4 累算代入文
        7.8.5 数値変換
        7.8.6 組み込み関数
        7.8.7 インデックス値
        7.8.8 ハッシュ値
        7.8.9 文字列化・バイト列化
        7.8.10 関数呼び出し
        7.8.11 属性アクセス
        7.8.12 コンテナインターフェース
        7.8.13 型チェック

第8章 tips
    8.1 ガベージコレクション
        8.1.1 循環参照の検出
        8.1.2 Python 3.4以降のガベージコレクション
    8.2 OSとUnicode
    8.3 イントロスペクション
        8.3.1 オブジェクトの型を取得する
        8.3.2 オブジェクトのメンバを調べる
        8.3.3 モジュールを探す
    8.4 Pythonのバイトコード

索引

Feedback

皆さんのご意見をお聞かせください。ご購入いただいた書籍やオライリー・ジャパンへのご感想やご意見、ご提案などをお聞かせください。より良い書籍づくりやサービス改良のための参考にさせていただきます。
[feedbackページへ]