Python文法詳解

Book description

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

Table of contents

  1. はじめに
  2. 目 次 (1/2)
  3. 目 次 (2/2)
  4. 第1章 イントロダクション
    1. 1.1 Python の特徴
      1. 1.1.1 読みやすさ
      2. 1.1.2 シンプル
      3. 1.1.3 高レベル言語
      4. 1.1.4 Batteries included
      5. 1.1.5 マルチプラットフォーム
      6. 1.1.6 拡張と組み込み
    2. 1.2 Pythonの歴史
    3. 1.3 Monty Python's Flying Circus
    4. 1.4 Pythonの処理系
  5. 第2章 Pythonの実行
    1. 2.1 Python を実行してみる
      1. 2.1.1 Pythonスクリプトの実行
      2. 2.1.2 Pythonスクリプトファイル
      3. 2.1.3 スクリプトファイルの文字コード
      4. 2.1.4 Pythonスクリプトの構造
    2. 2.2 基本データ型
    3. 2.3 式と代入文
    4. 2.4 比較演算子
    5. 2.5 辞書オブジェクト
    6. 2.6 リストとタプル
    7. 2.7 シーケンスのアクセス
    8. 2.9 ループ
    9. 2.10 イテラブルオブジェクト
    10. 2.11 関数
    11. 2.12 クラス
    12. 2.13 モジュール
    13. 2.14 入出力
  6. 第3章 式とデータ型
    1. 3.1 Pythonのデータ型
    2. 3.2 Pythonのオブジェクト
      1. 3.2.1 オブジェクトのメソッドと属性
    3. 3.3 Noneオブジェクト
    4. 3.4 Ellipsisオブジェクト
    5. 3.5 関数の呼び出し
    6. 3.6 代入文
      1. 3.6.1 変数と参照
      2. 3.6.2 要素の分解
      3. 3.6.3 del 文
      4. 3.6.4 累算代入文
    7. 3.7 変数名
    8. 3.8 演算子
      1. 3.8.1 算術演算子
      2. 3.8.2 論理演算子
      3. 3.8.3 比較演算子
      4. 3.8.4 条件演算子
    9. 3.9 数値型
      1. 3.9.1 数値型の算術演算子
      2. 3.9.2 除算と整数除算
      3. 3.9.3 自動型変換
      4. 3.9.4 その他の演算
      5. 3.9.5 数値型のメソッドと属性
    10. 3.10 整数
      1. 3.10.1 int型
      2. 3.10.2 整数のメソッド
    11. 3.11 論理値
      1. 3.11.1 bool型
    12. 3.12 整数のビット操作
      1. 3.12.1 負の整数のビット操作
      2. 3.12.2 ビット反転演算子
      3. 3.12.3 シフト演算子
    13. 3.13 浮動小数点数
      1. 3.13.1 float型
      2. 3.13.2 inf と nan
      3. 3.13.3 浮動小数点数のメソッド
    14. 3.14 複素数
      1. 3.14.1 complex型
    15. 3.15 10進浮動小数点数
      1. 3.15.1 decimal.Decimal型
      2. 3.15.2 コンテキスト
      3. 3.15.3 inf と nan
  7. 第4章 シーケンスとコンテナ型
    1. 4.1 シーケンス
      1. 4.1.1 添字によるアクセス
      2. 4.1.2 スライス
      3. 4.1.3 シーケンス要素の代入文
      4. 4.1.4 要素の削除
      5. 4.1.5 シーケンスの演算子
    2. 4.2 リスト
      1. 4.2.1 リストの要素
      2. 4.2.2 リスト内包
      3. 4.2.3 リストの演算子
      4. 4.2.4 list型
      5. 4.2.5 リストのメソッド
    3. 4.3 タプル
      1. 4.3.1 タプルの演算子
      2. 4.3.2 tuple型
      3. 4.3.3 タプルのメソッド
      4. 4.3.4 リストとタプル
    4. 4.4 文字列型とバイト型
    5. 4.5 文字列
      1. 4.5.1 エスケープシーケンス
      2. 4.5.2 raw 文字列
      3. 4.5.3 str 型
      4. 4.5.4 文字列の演算子
      5. 4.5.5 文字の列挙
      6. 4.5.6 文字列のメソッド (1/4)
      7. 4.5.6 文字列のメソッド (2/4)
      8. 4.5.6 文字列のメソッド (3/4)
      9. 4.5.6 文字列のメソッド (4/4)
      10. 4.5.7 format() メソッドのフォーマット指定文字列
    6. 4.6 バイト列
      1. 4.6.1 bytes型
      2. 4.6.2 バイト列の演算子
      3. 4.6.3 バイト値の列挙
      4. 4.6.4 バイト列のメソッド (1/3)
      5. 4.6.4 バイト列のメソッド (2/3)
      6. 4.6.4 バイト列のメソッド (3/3)
    7. 4.7 bytearray型
      1. 4.7.1 bytearrayのメソッド
    8. 4.8 辞書オブジェクト
      1. 4.8.1 要素の操作
      2. 4.8.2 辞書のキー
      3. 4.8.3 辞書内包
      4. 4.8.4 辞書の演算子
      5. 4.8.5 dict型
      6. 4.8.6 要素の列挙とビューオブジェクト
      7. 4.8.7 辞書のメソッド
    9. 4.9 集合オブジェクト
      1. 4.9.1 集合内包
      2. 4.9.2 要素の列挙
      3. 4.9.3 集合の演算子
      4. 4.9.4 set型
      5. 4.9.5 集合のメソッド
      6. 4.9.6 frozenset型
  8. 第5章 ステートメント
    1. 5.1 if 文
      1. 5.1.1 pass文
    2. 5.2 while文
      1. 5.2.1 break文
      2. 5.2.2 else節
    3. 5.3 for文
    4. 5.4 continue文
    5. 5.5 例外処理
      1. 5.5.1 例外型
      2. 5.5.2 raise文
      3. 5.5.3 例外の連結
      4. 5.5.4 トレースバックオブジェクト
    6. 5.6 assert文
    7. 5.7 with 文
  9. 第6章 関数とクラス
    1. 6.1 関数定義
      1. 6.1.1 可変長引数
      2. 6.1.2 キーワード専用引数
      3. 6.1.3 デフォルト引数
      4. 6.1.4 ドキュメンテーション文字列
      5. 6.1.5 関数アノテーション
      6. 6.1.6 lambda式
    2. 6.2 モジュールとパッケージ
      1. 6.2.1 モジュールの内容
      2. 6.2.2 グローバル変数とローカル変数
      3. 6.2.3 import文
      4. 6.2.4 モジュール検索パス
      5. 6.2.5 パッケージ
      6. 6.2.6 名前空間パッケージ
      7. 6.2.7 モジュールの実行
      8. 6.2.8 __main__ モジュール
      9. 6.2.9 コンパイル済みモジュールファイル
    3. 6.3 名前空間とスコープ
      1. 6.3.1 グローバル名前空間
      2. 6.3.2 ローカル名前空間
      3. 6.3.3 ローカルスコープのネスト
      4. 6.3.4 名前空間の参照
      5. 6.3.5 文字列のintern
    4. 6.4 クラス
      1. 6.4.1 属性
      2. 6.4.2 インスタンスの作成と解放
      3. 6.4.3 継承
      4. 6.4.4 プライベートメンバ
      5. 6.4.5 クラスブロックとスコープ
      6. 6.4.6 インスタンスの名前空間
      7. 6.4.7 メタプログラミング
    5. 6.5 デコレータ
      1. 6.5.1 ラッパ関数を作成するデコレータ
      2. 6.5.2 関数呼び出し形式のデコレータ
      3. 6.5.3 複数のデコレータ
      4. 6.5.4 functools.wrapsデコレータ
      5. 6.5.5 クラスデコレータ
  10. 第7章 データ型とプロトコル
    1. 7.1 ファイル入出力
      1. 7.1.1 テキストファイルの読み書き
      2. 7.1.2 バイナリファイルの読み書き
      3. 7.1.3 行単位の読み込み
      4. 7.1.4 標準入出力
      5. 7.1.5 ファイルのクローズ
      6. 7.1.6 ファイルクラス
    2. 7.2 オブジェクトの文字列表現
      1. 7.2.1 ascii()
      2. 7.2.2 文字列表現のカスタマイズ
      3. 7.2.3 対話コンソールでのrepr()
    3. 7.3 イテレータ
      1. 7.3.1 イテラブルなオブジェクト
      2. 7.3.2 リバースイテレータ
    4. 7.4 ジェネレータ
      1. 7.4.1 ジェネレータのメソッド
      2. 7.4.2 サブジェネレータ
      3. 7.4.3 ジェネレータ式
    5. 7.5 コンテキストマネージャ
      1. 7.5.1 contextlib.contextmanager()
    6. 7.6 ディスクリプタ
      1. 7.6.1 データディスクリプタと非データディスクリプタ
      2. 7.6.2 メソッドオブジェクト
      3. 7.6.3 classmethodとstaticmethod
      4. 7.6.4 property
    7. 7.7 抽象基底クラス
      1. 7.7.1 abc.ABCMetaクラス
      2. 7.7.2 抽象メソッド
    8. 7.8 特殊メソッド
      1. 7.8.1 二項演算子
      2. 7.8.2 単項演算子
      3. 7.8.3 比較演算子
      4. 7.8.4 累算代入文
      5. 7.8.5 数値変換
      6. 7.8.6 組み込み関数
      7. 7.8.7 インデックス値
      8. 7.8.8 ハッシュ値
      9. 7.8.9 文字列化・バイト列化
      10. 7.8.10 関数呼び出し
      11. 7.8.11 属性アクセス
      12. 7.8.12 コンテナインターフェース
      13. 7.8.13 型チェック
  11. 第8章 tips
    1. 8.1 ガベージコレクション
      1. 8.1.1 循環参照の検出
      2. 8.1.2 Python 3.4以降のガベージコレクション
    2. 8.2 OSとUnicode
    3. 8.3 イントロスペクション
      1. 8.3.1 オブジェクトの型を取得する
      2. 8.3.2 オブジェクトのメンバを調べる
      3. 8.3.3 モジュールを探す
    4. 8.4 Pythonのバイトコード (1/2)
    5. 8.4 Pythonのバイトコード (2/2)
  12. 索 引 (1/3)
  13. 索 引 (2/3)
  14. 索 引 (3/3)

Product information

  • Title: Python文法詳解
  • Author(s): 石本 敦夫
  • Release date: September 2014
  • Publisher(s): O'Reilly Japan, Inc.
  • ISBN: 9784873116884

You might also like

book

Go言語によるWebアプリケーション開発

by Mat Ryer, 鵜飼 文敏, 牧野 聡

Goプログラミングについて一歩踏み込んだプロユースの解説書。読者はシンプルなコードを書きながら、実運用アプリケーションの開発で使うスキルとテクニックを学ぶことができます。本書のサンプルプログラムはどれもシンプルですがとても実践的です。拡張性、並行処理、高可用性といったエンタープライズアプリケーションの開発で直面する現実的な問題に対するソリューションが含まれています。本書を読めば、実際の業務に必要な技能――Goによる開発手法および関連技術の使い方――をマスターし、ツールやプログラムの開発スキルを迅速かつ簡単に向上できます。日本語版では、監訳者の鵜飼文敏氏による巻末付録「Goらしいコードの書き方」を収録しました。

book

ハンズオンNode.js

by 今村 謙士

Node.jsの入門書。対象読者は、フロントエンド開発の知識はあってもサーバサイド開発は知らないエンジニアや、他言語の経験はあってもNode.jsは触ったことがないプログラマー。本書ではターミナルのプロンプトにコマンドを入力してその反応を確認したり、簡単なスクリプトをNode.js環境で実行したりしながら、Node.jsプログラミングの基本からWebアプリケーションの開発、テスト、デプロイまでをハンズオン形式で学びます。また、コードの背景にある設計思想や、プログラムの挙動の仕組みについてもしっかり掘り下げます。本書のゴールは、読者がNode.jsの全体像を掴み、業務レベルでのアプリケーション開発に対応可能な知識を身につけることです。

book

初めてのPHP

by David Sklar, 桑村 潤, 廣川 類, 木下 哲也

10年ぶりにメジャーバージョンアップされ、大幅な高速化やメモリ使用量の低減など、大きく性能が向上したPHP 7に対応したロングセラーの入門書の改訂版です。魅力的でインタラクティブなWebサイトの構築に欠かせないPHP言語について、基礎からていねいに解説し、実際にサンプルプログラムを試しながらWebアプリケーションを作成する過程を通じて、一歩一歩着実にPHPの知識と実践テクニックを自分のものにすることが可能です。PHPの基礎的な文法や書き方だけなく、実用的な視点からの情報も幅広く解説しています。■PHP技術者認定機構 / PHP技術者認定初級試験公式テキスト

book

AI技術を活かすためのスキル ―データをビジネスの意思決定に繋げるために

by Daniel Vaughan, 西内 啓, 長尾 高弘

現代社会は多くのデータで溢れていますが、価値はデータや予測ではなく、意思決定によって生まれます。本書では、データの分析スキルを、ビジネス上の課題をより良い意思決定をもって処方的に解決するための能力であるとし、多くのユースケースを交えて解説します。ビジネス上の問いの立て方からスタートし、達成したい成果を明らかにした上でそのためのアクションを逆算していく。不確実性や因果関係の処理によって生み出される問題なども詳しく論じます。