Pythonスタートブック [増補改訂版]

Python入門ロングセラー!

本書は、Pythonもしくはプログラミング自体ゼロから始めたいという方におすすめの1冊です。難しい言い回しも特になく、基礎の基礎といった内容です。分量も難易度も初心者に適しているため、まさにスタートブックといえます。

辻 真吾 (著)
出版社: 技術評論社; 増補改訂版;第2版 (2018/4/12)、出典:出版社HP

はじめに

この本の初版が出版されたのは2010年のことですが、その頃のPythonは、日本においてはまだまだ知名度が低いプログラミング言語でした。Pythonが日本を含めた世界で急速に人気を拡大するのに合わせ、幸いにも、本書は多くの方々から好評をいただきました。

いまやPythonは、JavaやC/C++といった言語に、世界的に見ても肩を並べるまでになりました。Pythonは、初学者に優しい言語です。これは、プログラミングに慣れた人にとっても、楽に書けることを意味するので、このことが普及の一因になっていることは間違いないでしょう。また最近では、データ解析や機械学習を基礎とした人工知能の分野で、Pythonが中心的な役割を果たす言語になっていることも、普及の原動力になっていると考えられます。

インターネット上でWebが誕生し、世界に普及しはじめたのは1990年代はじめのことです。半世紀も経たないうちに、あらゆる情報がデジタル化されてネットでやり取りされる時代になりました。こうした情報を扱う多くの方々は、ほとんどの仕事がコンピュータを使った作業になっているはずです。コンピュータは、プログラミング言語を利用すると、自分の思うがままに操ることができます。プログラミング言語には種類がありますが、コンピュータの高性能化に合わせて、人にとってプログラミングの負担が減るように進化してきています。Pythonはその中でも、もっとも人に優しい言語の1つです。

人類の歴史は長く、いろいろな発見や発明を積み重ねてきました。最近はネットの普及もあって、複雑に絡み合った情報が、いたるところに溢れかえっています。ただ、何かまったく新しいことをはじめようと思うときは、知識がないので、どの情報を参考にすれば良いのかわからなくなることもあるかもしれません。どんな分野の達人にも、はじめてその分野に足を踏み入れた瞬間はあります。本書は、プログラミングの世界へ最初の一歩を踏み出すための助けになるように作りました。改訂版では、ご支持いただいた初版の良さをそのままに、さらに深い知識を手に入れるための道筋を示す、新たな2章を追加しました。

本書を通じ、1人でも多くの方に、プログラミングの楽しさを知ってもらえたらと思っています。楽しくなれば、きっとできるようになります。できるようになると、仕事が効率化します。仕事が早く終われば、別のことに時間が使えます。余暇に使っても良いですし、新たな分野の研究に使って良いかもしれません。そうすると、人類のさらなる発展に寄与できるかもしれません。本書がその一助になれば、この上ない幸せです。

2018年2月 辻 真吾

辻 真吾 (著)
出版社: 技術評論社; 増補改訂版;第2版 (2018/4/12)、出典:出版社HP

目次 CONTENTS

本書の構成
本書の使い方
サンプルデータについて

第1章 プログラムを作ろう!
1-1 この章で学ぶこと
1-2 プログラミング言語Python
1-3 Pythonのインストール
1-4 コンピュータに指示を出す
1-5 インタラクティブシェルではじめるPython
1-6 はじめてのプログラムを書く
練習問題

第2章 プログラムの材料と道具
2-1 この章で学ぶこと
2-2 材料の種類とデータ型
2-3 道具としての関数
2-4 メソッド
練習問題

第3章 データと型のすべて
3-1 この章で学ぶこと
3-2 材料と道具をまとめて考える
3-3 モノの上下関係を考える
3-4 データの型とその中身
3-5 datetimeモジュール
3-6 データ型とオブジェクト
3-7 人生を計算してみる
練習問題

第4章 データの入れ物
4-1 この章で学ぶこと
4-2 リスト型
4-3 辞書型
4-4 その他の入れ物
4-5 単語並べ替えプログラム
練習問題

第5章 条件分岐と繰り返し
5-1 この章で学ぶこと
5-2 for文
5-3 if文
5-4 while文
5-5 エラー
5-6 体型判定プログラム
練習問題

第6章 ファイルの読み書き
6-1 この章で学ぶこと
6-2 簡単なファイルの読み書き
6-3 複数行を書き込み・読み込みする
6-4 for文を使ったファイルの処理
練習問題

第7章 Pythonで画を描く
7-1 この章で学ぶこと
7-2 turtleモジュールの基本
7-3 turtleモジュールを使いこなしてみよう
練習問題

第8章 関数を作る
8-1 この章で学ぶこと
8-2 関数の書き方を知ろう
8-3 関数の便利さを実感してみる
8-4 さらに関数を知る
練習問題

第9章 新しいデータ型を作る
9-1 この章で学ぶこと
9-2 データ型の復習
9-3 新しいデータ型を作る
9-4 もっとクラスを知る
9-5継承
練習問題

第10章 Webアプリケーションを作る
10-1 この章で学ぶこと
10-2 Webの仕組み
10-3 CGIで作る動的なWeb
10-4 サーバにデータを送る
練習問題

第11章 データを解析する
11-1 この章で学ぶこと
11-2 データベースを利用する
11-3 ヒストグラムを描く
練習問題

付録
付録A WindowsにPythonをインストールする
付録B macOSにPythonをインストールする
付録C 文字コードと日本語
付録D 関数と変数の高度な話
付録E リスト、辞書、セットの実践テクニック
付録F コンピュータの歴史とPython
付録G さらに学んでいくために
付録H 外部ライブラリの追加方法
練習問題の解答
索引

辻 真吾 (著)
出版社: 技術評論社; 増補改訂版;第2版 (2018/4/12)、出典:出版社HP

本書の構成

この本は、プログラミングについての知識を学ぶために構成されています。Pythonという言語を使って、1行の計算式から学習をはじめて、最終的には本格的なプログラムを作れるようになることを目指します。幸いなことに、Pythonにはたった1行でもすぐにプログラムを実行できる環境が備わっていますので、実際にプログラムを入力して、1つ1つの結果に納得しながら読み進めていくことができます。簡単に各章の内容をご紹介します。

第1章 プログラムを作ろう!
Pythonのプログラムを作って実行するための環境を整えましょう。そして、最初のプログラムを作って実行します。細かいことは後から学べばいいのです。
第2章 プログラムの材料と道具
プログラムを作るためには、材料と道具が必要です。材料とは、プログラムの中で使われるデータで、道具とは、このデータを加工するための仕組みです。
第3章 データと型のすべて
たとえば、日付や時刻はどのようにプログラムの中で使うのでしょうか?これを簡単にするPythonの仕組みを、わかりやすい例で学びます。
第4章 データの入れ物
プログラムは、住所録の宛名印刷など、たくさんのデータを順番に繰り返し処理する作業が得意です。まずは、データをまとめる仕組みを解説します。
第5章条件分岐と繰り返し
繰り返し処理と条件によって処理を分ける仕組みを解説します。この章の内容が理解できれば、かなり高度なプログラムを作れる知識が身につきます。
第6章 ファイルの読み書き
ワープロやお絵描きソフトで作ったデータをファイルに保存するのと同じことを、Pythonのプログラムで実現します。
第7章 Pythonで画を描く
Pythonには、学習を助けてくれる亀がいます。画面上でこの亀を動かしながら、第5章の知識をさらに確かなものにしていきます。
第8章 関数を作る
第2章でデータを扱うための便利な道具を紹介しましたが、道具を自分で作れるようになると便利ですので、ここでチャレンジしてみます。
第9章 新しいデータ型を作る
日付や時刻はよく使われるのでPythonにあらかじめ用意されていますが、用意されていないモノは作るしかありません。その作り方を解説します。
第10章 Webアプリケーションの初歩
Webは現代の情報社会を支える重要な技術の1つです。その基本的な仕組みを理解して、プログラミングの練習を兼ねて、簡単なWebアプリを作ってみます。
第11章 データサイエンスの基本
Pythonは、データ解析や、機械学習(人工知能)といった分野で、中心的に利用されている言語の1つです。この章ではその最初の一歩を、SQLと一緒に解説します。
付録
本文中では説明しきれなかった周辺知識や高度な知識、知っていると便利なテクニックなどをまとめています。

本書の使い方

本書の学習ページでは、STEPごとに基本の解説から順に、より複雑な内容へと解説を進めていきます。考え方やしくみをイラストで解説していますので、難しい内容もイメージで理解することができます。

解説の要所では、「ポイント」や「ぎもん」「まとめ」で要点をまとめています
薄い背景のリストは、エディタに入力して保存するリストです。サンプルデータも用意されています(下記参照)
濃い背景のリストは、インタラクティブシェルに直接入力するものです。解説を読みながら実行してください
脚注では、操作時に注意すべき事柄や、本文の補足解説を行っています
なお、本書の内容が古くなってしまった場合は、以下の著者サポートサイトに対応情報を掲載しています。
http://www.tsjshg.info/pysta/

サンプルデータについて

本書で解説しているプログラムのサンプルデータは、技術評論社のWebサイトからダウンロードすることができます。以下のURLにアクセスして「サンプルデータ」をダウンロードし、解凍してご利用ください。実際に動かして試す場合は、第1章および付録A、付録Bを参考に、Pythonとプログラミング用のエディタをインストールしてください。なお、サンプルデータはWindows用とmacOS用の2種類あります。
http://gihyo.jp/book/2018/978-4-7741-9643-5/support

辻 真吾 (著)
出版社: 技術評論社; 増補改訂版;第2版 (2018/4/12)、出典:出版社HP

はじめにお読みください

  • 本書の画面およびプログラムについて
    本書の画面およびプログラムは、Windows10およびmacOS High Sierraにて動作確認を行っております。
  • プログラムの著作権について
    本書で紹介し、ダウンロードサービスで提供するプログラムの著作権は、すべて著者に帰属します。これらのデータは、本書の利用者に限り、個人・法人を問わず無料で使用できますが、再転載や再配布などの二次利用は禁止いたします。
  • 本書記載の内容について
    本書に記載された内容は、情報の提供のみを目的としています。したがって、本書を用いた運用は、必ずお客様自身の責任と判断によって行ってください。これらの情報の運用の結果について、技術評論社および著者はいかなる責任も負いません。

本書記載の内容は、第1刷発行時のものを掲載していますので、ご利用時には変更されている場合もあります。ソフトウェアはバージョンアップされることがあり、本書の説明とは機能や画面が異なってしまうこともあります。
以上の注意事項をご承諾いただいた上で、本書をご利用願います。これらの注意事項をお読みいただかずにお問い合わせいただいても、技術評論社および著者は対処できません。あらかじめ、ご承知おきください。

  • Pythonは、Python Software Foundationの登録商標または商標です。
  • Microsoft Windowsは、米国およびその他の国における米国Microsoft Corporationの登録商標です。
  • macOSは、米国およびその他の国における米国Apple Inc.の登録商標です。
  • その他、本文中に記載されている製品の名称は、すべて関係各社の商標または登録商標です。なお、本文中にTMマーク、Rマークは明記しておりません。