2歩戻ったら2.5歩進みたい

関東で働くweb developerのブログ

「Pythonスタートブック」でPythonを初めてみた

どうもこんにちは。きゃにすたーです。

Pythonの学習を「Pythonスタートブック」で始めたらめちゃくちゃ分かりやすかったので、今回はPythonスタートブックを使ってPythonを勉強した感想をお伝えしたいと思います。

完全文系でプログラミングもほぼ未経験の僕ですが、とりあえず一冊やってみたらなんとなくPythonのコードが読めるようになりました。文系だけどプログラミングやってみたい皆様なんかには参考になるんじゃないかと思われます。

 

今回取り組んだのはこちらです。 

Pythonスタートブック

Pythonスタートブック

 

 ざっと調べたら色々出てくるんですが、アマゾンレビューで一番評価が高かったのでこれにしました。要約すると「サルでも分かる!」みたいなことが山ほどレビューに書いていたので安心してポチりました。

入門 Python 3

入門 Python 3

 

 この辺も一瞬迷ったんですが、書店で見たときの分厚さと中身の迫力に気絶しそうになったのでやめました。

学習の過程

学習環境

Anacondaをインストールして、jupyter notebookをノートにしてました。jupyter notebookというのは、ブラウザで動くPythonの環境みたいなものです。

マークダウン式でメモしたり、もちろん対話的なコーディングをしたり、グラフの描画をしたりといったことが一つの画面で、それこそノートみたいに書き込んでいけるめちゃくちゃ便利なツールです。

f:id:canisterism:20170922234734p:plain

大体こんな感じ。自分でメモしているのが分かると思います。

 僕のような初心者は、書きたいメモがエディタ上のコメントアウトだけでは対処できないような量になりがちなので、要するに初心者はAnacondaインストールしてjupyter notebookでガリガリ書くのが僕はおすすめだという話です。

もしこの記事を読んでやってみようという方がいたら、めちゃくちゃ環境の設定は簡単なのでぜひやってみてください。この2つが分かりやすいですかね。

Anaconda を利用した Python のインストール (Windows) – Python でデータサイエンス

Jupyter Notebook を使ってみよう – Python でデータサイエンス

といってもダウンロードしてインストールしたら終わりなのでほんとに5分で出来ます。

学習者の経験値

 僕は独立系のSIerで働いていて一応簡単なプログラミングなら出来るのですが、それもCOBOLのような非常に古い体質の言語なので、現在トレンドになっている言語でよく使われるオブジェクト指向や関数といった概念は全く分かりません。IFやFORなんかの原始的な処理が分かる程度なので、ほんとーに素人に毛が生えた程度です。多分エクセルとか頻繁に使っている経理のおばちゃんとかの方が分かっていると思います。

タイトルにある文系という文言ですが、参考までに言うと高校の数学では平均は30~40点ぐらい、最低点数は4点でした。僕からは以上です。

期間

だいたい3週間ぐらいで終わりました。平日は家に帰ってやることを済ませて寝るまでの時間、土日も空いてる時間をYouTube見ながらだらだらやってみる感じで3週間ぐらいだったので、全くの素人でも普通にやれば2週間足らずで終わると思います。

 具体的な学習方法

 jupyter notebookに理解したことを書きながらつらつら写経してました。僕は何かを学習する際は読み上げながら書く癖があるので、「datetimeモジュールをインストールして…変数をmydatetimeで定義して…それに呼び出したモジュールから初期化メソッドを呼び出して…」といった調子でブツブツ言いながら書き殴ってました。

少し話が逸れますが、ブックスタンドを今回のために購入したのですが、これが大正解でした。Pythonスタートブックは大型本なので、机の上に開きながらパソコンと並行して読むのは非常に辛いです。このブックスタンドがあれば目線をそらすだけで見たい情報が得られるので、たかだか2000円ぐらいの追加投資で非常に効率がアップして嬉しかったです。

actto BST-02BK ブックスタンド(OEM品番:EDH-004)

actto BST-02BK ブックスタンド(OEM品番:EDH-004)

 

今回買ったやつ。大型本やタブレットなんかも立ててくれます。技術書は大~中型の本が多いですし、長い目で見ても非常にいい買い物だったと思います。今はみんPyを立ててくれています。 

 やってみた感想

 冒頭にも書きましたが、総じてめちゃくちゃ分かりやすかったです。本当に基礎の基礎からやってくれてますので、ワードとエクセルで文字と数字が打てるレベルのPCスキルさえあれば詰まることはほぼ無いんじゃないかなぁと思います。毎回の説明で画面のスクリーンショットや書くコードを挟んでくれるのですが、そのたびになぜそのコードがそのように動くのか、画面に入力したこの文字はどういう意味かということを逐一解説してくれています。

この本が他の入門書と違うのは、図の量が圧倒的に多いということです。体感2ページに1回のペースで出てくるので、見開きにはほぼ全て図がついています。ですので、これが分からない…と悩む時間が限りなく0に近い状態で学習を続けることが出来ます。

新しいことを学習する上で最初のスピード感というのは非常に大事で、大体の全体観をつかむまでの間に、「分からない」の割合が大きくなるとその分挫折する確率は飛躍的に上がります。プログラミング学習にありがちな「手を出したはいいものの、あんまり分からないしモチベーションが上がらない…」といったことはこの本を使っていればまず起こらない…と思います。

事実、僕はこの本をやり通すのに1回だけしか人に聞きませんでした。その1回というのは、本書で使うTurtleという亀を動かすモジュールの画面が毎回フリーズして動かないので助けてほしい、という内容を、会社でPythonを知っている先輩に尋ねただけでした。つまり、内容を理解するのには本当に詰まっていません。

結論とこれから

 要するに、「Pythonスタートブック超分かりやすいのでお勧めですよ」ってことです。とりあえず僕の学習状況としてはほんのりPythonのコードが読めるようになったので、今は「みんなのPython」に取り掛かっています。 

みんなのPython 第4版

みんなのPython 第4版

 

 Python機械学習ディープラーニングの分野が非常に強いのでそっちにもいずれは行きたいんですが、とりあえずもうちょっとしっかり分かっときたい感じですね。これだけ勧めておいてなんですが、まださわりのさわりのさわりのさわりしか分かっていないので、これからみんPyをやりつつ小さいツールなんかを作っていって、Webアプリを作ったり機械学習で分析したり、実践的な方に行きたいと思います。そのうち勉強会にも出掛けてPythonを使っている友達も出来たらなぁ…と思っています。

とりあえず今回はこんな感じです。1冊普通にやり通せたのが何気に嬉しいので、しばらく頑張りたいと思います。それでは。