関連サイト
本書の関連ページが用意されています。
内容紹介
便利に使えるPython標準ライブラリの活用術。初中級スキルアップの近道! 文字列/データ操作、テキスト処理、ファイル操作、数値演算、ネットワークアクセス、GUIなど、使えるテクニックを満載。
本書では、Pythonの基本的な文法をすでに理解したユーザーが次に学ぶべきテーマとして、Pythonの標準ライブラリを取り上げます。本格的なプログラミングへの準備として、習得しておきたい標準ライブラリの基礎的な活用法を解説します。
Pythonの標準ライブラリは、多数のデータ型やモジュールを提供しています。それらの機能をうまく活用することがプログラミングの上達につながります。
目的別に180以上の基本レシピを収録。特定の目的を達成するのに、どの機能をどのように使えばよいのか、すぐにわかるようになっています。
キーとなる関数やメソッドなどの書式に加え、対話的な実行例やスクリプトの例も示しています。本書により、Pythonのスキルを高め、実践に向けて足場を固めていきましょう。
書誌情報
- 著者: 大津真, 田中賢一郎
- 発行日: 2018-02-19 (紙書籍版発行日: 2018-02-19)
- 最終更新日: 2018-06-01
- バージョン: 1.2.0
- ページ数: 360ページ(PDF版換算)
- 対応フォーマット: PDF, EPUB
- 出版社: インプレス
対象読者
Pythonの基本的な文法を理解しているPythonプログラミングの初中級者。
著者について
大津真
東京都生まれ。早稲田大学理工学部卒業後、外資系コンピューターメーカーにSEとして8年間勤務。現在はフリーランスのテクニカルライター、プログラマー。近著に『これから学ぶ macOSターミナル』(インプレス)、『きちんとわかる! JavaScriptとことん入門』(技術評論社)などがある。
田中賢一郎
慶應大学理工学部修了後、キヤノン、マイクロソフトを経て、Future Coders(future-coders.net)を起業。プログラミング教室(川崎市中原区)の運営、企業研修、コンサルタントに従事。近著に『ゲームを作りながら楽しく学べるPythonプログラミング』(インプレスR&D)、『ゲームで学ぶ JavaScript入門 HTML5&CSSも身に付く!』(インプレス)がある。
目次
まえがき
Introduction Python環境の構築
- 1 Pythonのインストール
- 2 モジュールのインポートについて
- 3 Atomエディタについて
Chapter1 文字列とデータの基本操作
- 1-1 文字列の基本操作/001 文字列をリテラルによって生成するには
- 002 文字列の長さを求めるには
- 003 文字列を連結するには
- 004 アルファベットの大文字/小文字を変換するには
- 005 文字列から指定した位置の文字を取り出すには
- 006 文字列の一部を取り出すには
- 007 文字列を反転するには
- 008 文字列の一部を置換するには
- 009 文字列内の文字を変換表に従って置換するには
- 010 文字列内を検索するには
- 011 文字列内の文字列の数をカウントするには
- 012 文字列内に値を埋め込むには(その1)
- 013 文字列内に値を埋め込むには(その2)
- 014 文字列の先頭/最後から指定した文字を取り除くには
- 015 リスト、タプル、辞書の要素を接続した文字列を生成するには
- 016 数値を文字列に変換するには
- 017 文字列を数値に変換するには
- 018 文字列が数値/アルファベット/空白文字であることを調べるには
- 019 文字列を指定した文字位置で分解しリストに変換するには
- 020 文字列をセパレータの位置で3分割したタプルを戻すには
- 021 文字列の先頭/最後が指定したものかを調べるには
- 022 文字列を左寄せ/中央寄せ/右寄せにするには
- 023 文字列の先頭を「0」で埋めるには
- 024 文字列を指定したエンコーディングでエンコード/デコードするには
- 025 文字とユニコードのコードポイントを相互変換するには
- 026 タブを展開するには
- 1-2 データの基本操作/027 値のデータ型を調べるには
- 028 オブジェクトのidを調べるには
- 029 値を画面に表示するには
- 030 文字列をPythonの式や文として実行するには
- 031 実行中のプログラムファイルのパスを調べるには
- 032 実行中のプログラムファイルの絶対パスや名前を調べるには
- 033 条件判断を簡潔に行うには
- 034 サブクラスかどうかを調べるには/035 グローバル、ローカルのシンボルテーブルを表示するには
- 036 コマンドラインから入力を受け取るには/037 2つの値を比較するには
- 038 オブジェクトが同じかどうかを判断するには
- 039 ヘルプを表示するには
Chapter2 コレクションの取り扱い
- 2-1 リスト、タプルの操作/040 リスト、タプルをリテラルとして生成するには
- 041 リスト、タプルの要素数を求めるには
- 042 リスト、タプルを連結するには/043 リスト、タプルの指定した位置の要素を取り出すには
- 044 範囲を指定してリスト、タプルの要素を取り出すには
- 045 リスト、タプルの要素の順番を反転するには
- 046 タプルとリストを相互変換するには
- 047 リストの要素の値を変更するには
- 048 リストの最後に要素を追加するには
- 049 リストの指定した位置に要素を挿入するには
- 050 リストから指定した位置の要素を削除するには
- 051 指定した値の要素がリスト、タプルに存在するかを調べるには
- 052 リストから指定した値の要素を削除するには
- 053 リスト、タプルの指定した値の要素の数を調べるには
- 054 リスト、タプルの要素をソートするには
- 055 リストやタプルの要素の最小値/最大値を求めるには
- 056 リストをコピーするには
- 057 リストやタプルの要素を順に取り出して処理するには
- 058 リストやタプルのインデックスと要素を順に取り出すには
- 059 2つのリスト、タプルの要素を組み合わせてループで処理するには
- 060 整数の並びのリストやタプルを生成するには
- 061 リスト、タプルの数値の要素の合計を求めるには
- 062 シンプルな記述が可能な内包表記でリストを生成するには
- 063 関数を使用してリストやタプルの要素を抽出するには
- 064 関数を使用してリストやタプルの要素を順に処理するには
- 2-2 辞書の操作/065 辞書をリテラルとして生成するには
- 066 指定したキーに対応する要素を取得するには
- 067 辞書に要素を追加する/値を変更するには/068 辞書の要素数を取得するには
- 069 辞書の内容を別の辞書で更新/連結するには
- 070 辞書の要素を削除するには
- 071 辞書に指定したキーの要素が存在するか調べるには
- 072 辞書のすべてのキーを取得するには
- 073 辞書のすべての値を取得するには
- 074 辞書からすべてのキーと値のペアを取得するには
- 075 辞書をコピーするには
- 076 シンプルな記述が可能な内包表記で辞書を生成するには
- 2-3 セットの操作/077 セットをリテラルとして生成するには
- 078 セットをリストやタプルなどから生成するには
- 079 セットの要素数を求めるには/080 セットに要素を1つ追加するには
- 081 セットを別のコレクションで更新するには
- 082 2つのセットを合わせて新たなセットを生成するには
- 083 セットの要素を削除するには
- 084 セットをリストに変換するには
- 085 セットに指定した要素が含まれているかを調べるには/086 セットの要素を順に取得するには/087 2つのセットの関係を調べるには
- 088 セットの要素を辞書のキーとして使用するには
- 089 セットをコピーするには
- 090 シンプルな記述が可能な内包表記でセットを生成するには
- 2-4 collectionsモジュールの便利なクラス/091 タプルやリストの要素の出現回数を数えるには
- 092 辞書にデフォルト値を設定するには
- 093 タプルの要素に名前を付けるには
Chapter3 いろいろなテキスト処理
- 3-1 正規表現/094 正規表現を使用して検索を行うには
- 095 マッチした部分の文字列や位置を取得するには
- 096 パターン内のPythonのエスケープシーケンスを無効にするには
- 097 最短マッチを行うには
- 098 パターンをグループ化してマッチした部分を複数取り出すには
- 099 マッチしたすべての部分をリストとして取り出すには
- 100 文字列をパターンにマッチする部分で分割するには
- 101 パターンにマッチする部分を置換するには
- 102 パターンをコンパイルして実行速度を上げるには
- 3-2 テキストファイルの読み書き/103 テキストファイルの内容をまとめて読み込むには
- 104 テキストファイルの各行をリストの要素として取り出すには
- 105 テキストファイルの各行を1行ずつ読み込むには
- 106 文字列をテキストファイルに書き出すには
- 107 リストの要素をまとめてテキストファイルに書き出すには
- 3-3 CSVファイルの取り扱い/108 CSVファイルを読み込むには
- 109 文字列をCSVファイルに書き出すには
- 110 CSVファイルを辞書形式で読み込むには
- 111 CSVファイルに辞書形式で書き込むには
- 3-4 JSONデータの取り扱い/112 JSONファイルを読み込んでPythonのオブジェクトに変換するには
- 113 JSONデータの文字列をPythonのオブジェクトに変換するには
- 114 PythonのオブジェクトをJSONデータに変換するには
- 115 JSONデータをファイルに書き出すには
Chapter4 OSの機能を利用する―ファイル/ディレクトリ/時刻/日付
- 4-1 ファイルやディレクトリの取り扱い
- 116 パス名(ディレクトリやファイル)を分割するには
- 117 ファイル名と拡張子に分割するには
- 118 パス名(ディレクトリやファイル)を連結するには
- 119 パスを正規化するには
- 120 ファイルやディレクトリの有無を調べるには
- 121 ディレクトリを作成するには
- 122 ディレクトリを削除するには
- 123 ファイルを削除するには
- 124 作業ディレクトリを取得・移動するには
- 125 ディレクトリのファイル一覧を取得するには
- 126 条件に合致するファイルをリストアップするには
- 127 ファイルやディレクトリの名前を変えるには
- 128 空のファイルを作成するには
- 129 一時ファイルを作成するには
- 4-2 多少高度なファイル操作/130 ファイルをコピーするには
- 131 コマンドのパスを調べるには
- 132 ファイルを圧縮/展開するには
- 133 複数ファイルから読み込むには
- 134 オブジェクトをファイルに保存する/ファイルから読み込むには
- 4-3 timeモジュールによる時刻の取り扱い/135 現在時刻を取得するには
- 136 一定時間実行を停止するには
- 137 経過時刻を計測するには
- 4-4 datetimeモジュールによる日付時刻の操作/138 日付に関する情報を求めるには
- 139 datetimeモジュールで時刻に関する情報を求めるには
- 140 経過日数をカウントするには
Chapter5 数値演算と乱数
- 5-1 さまざまな数値演算/141 小数を整数に変換するには
- 142 絶対値を求めるには/143 べき乗を求めるには
- 144 平方根を求めるには
- 145 角度とラジアンを相互変換するには
- 146 三角関数を使うには
- 147 座標(x,y)とX軸のなす角度を求めるには
- 148 10進数と16進数を相互に変換するには
- 149 余りと商を一度に求めるには
- 150 複数の要素のTrue/Falseを一度に調べるには
- 5-2 乱数/151 乱数を生成するには
- 152 ランダムに並べ替え、もしくは1つを選択するには
Chapter6 ネットワークへのアクセス
- 6-1 URLの操作とアクセスの基本/153 URLのフォーマットを解析するには
- 154 URLで絶対パスを取得するには
- 155 URLで示されるページを取得するには
- 156 URLをファイルに保存するには
- 157 URLからJSON形式のデータを取得するには
- 6-2 Webサーバとのやり取りの基本/158 テスト用Webサーバを用意するには
- 159 特殊文字をURLで使うには
- 160 辞書型データをURLエンコードするには
- 161 POSTでデータを送信するには
- 162 HTTPヘッダを指定するには
- 163 HTTPやHTTPSで通信を行うには
- 164 ブラウザを起動するには
Chapter7 描画とGUI
- 7-1 Turtleグラフィックスを使用する/165 基本的な描画を行うには
- 166 多角形の描画を行うには
- 167 幾何学模様を描画するには
- 168 フラクタルを描画するには
- 7-2 Tkinterでウィジェットをレイアウトする/169 ウィンドウを表示するには
- 170 縦方向(横方向)にボタンを配置するには
- 171 格子状にウィジェットを配置するには
- 172 位置を指定してウィジェットを配置するには
- 173 フォントを指定するには
- 174 複雑な配置をするには
- 7-3 Tkinterでイベントを処理する/175 クリックイベントに反応するには
- 176 キー入力に反応するには
- 177 マウスイベントを取得するには
- 178 生成後にウィジェットのオプションを設定するには
- 179 GUIの状態を変数にバインドするには
- 7-4 TkinterのCanvasに描画する/180 Canvasに描画するには
- 181 Canvasに描画した内容を操作するには
- 182 mainloop以外の処理を実行するには
Chapter8 そのほかの便利なモジュール
- 8-1 そのほかのモジュール/183 コマンドラインツールの引数処理を簡単に行うには
- 184 ログを処理するには
- 185 オブジェクトを手軽に永続化するには
- 186 ユニットテストを実行するには