CCWO Embedded Space

CCWOの日々の開発を発信するブログ

Python

Pythonについて
Pythonを触り始めたのは大学2年のときなのでかれこれ2年くらい触っています。
ただ、Pythonは便利すぎて扱うのが難しいと思います。
そこで最近は体系的にPythonを使えるように勉強しています。
正直なところググりながらコピペコピペでちゃんと動いてくれますからね。これもいいところではありますけど。
現状の開発環境はこんな感じになっています。
Anaconda (Windows)

Python 3.6.0 :: Anaconda custom (64-bit)
pip 9.0.1 from C:\Anaconda3\lib\site-packages (python 3.6)

bash on ubuntu on windows

Python 3.5.2
pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)
Python 2.7.12
pip 9.0.1 from /usr/lib/python2.7/dist-packages (python 2.7)

っていう感じになっています。
初めはbash上でいろいろと使っていたのですが、python3にモジュールをどんどん足さないと使えないのが不便で結局今はパッケージが初めから入っているAnacondaを使っています。
あと本当はコマンドラインからやりたいんですけどね~・・・bashのpythonをアップグレードしようとしたのですがどうしてもやりかたがよくわからなくて今はこうなっています。
それとAnacondaをwindowsとbash両方に入れるのもなんか頭悪い感じがして避けました。
(デスクトップはpipのアップグレードができてpythonをそこそこ最新まではアップグレードできたのですが、ノートパソコンがアップグレードできなくて詰んでる(´・_・`))
なのでしばらくは簡単なプログラムならbashで、しっかりやるときはAnacondaってことになりそうです。
ただ、困ったのがAnacondaだと、プログラムのキャッシュが消せないときがたまにあって、実行結果が変わらないバグあってそういうときは問答無用でbashですかね。
実行したコマンド

sudo apt install python-pip
sudo apt install python3-pip
sudo apt install python3-tk
sudo pip install --upgrade pip
sudo apt-get install git gcc make openssl libssl-dev libbz2-dev libreadline-dev libsqlite3-dev

次にPythonの本について自分が使ってみた本を紹介したいと思います。
今回新しくPythonの勉強に二冊買いました。
これに加えて前から何冊かPythonについて書かれた本は持っていまして、そちらはRaspberry Piで使うようのやつですが一緒に載せておきます。

実践力を身につける Pythonの教科書

実践力を身につける Pythonの教科書

こちらは最近かなり人気のPython本ですね。全部読んでみましたが非常にわかりやすかったです。特にクラスに関するところはあまり馴染みがなかったのですが、前よりは理解できた気がします。
Pythonをちゃんと使えるようにするためには必読かもしれないですね。
科学技術計算のためのPython入門 ――開発基礎、必須ライブラリ、高速化

科学技術計算のためのPython入門 ――開発基礎、必須ライブラリ、高速化

こちらも最近かなり人気のPython本ですね。こちらは科学技術計算に特化したパッケージの使い方が中心です。ただ冒頭にPythonの解説もついているので、もともとPythonをかなり触れる人だけでなく、初心者の人にもかなり読みやすくていいかもしれないですね。ただ、コマンドラインの使い方がある程度分かる人が読むことが前提になっている感じがしますので、UNIX利用経験があったほうが読み進めるのに苦労はしないと思います。
NumPy・SciPy・Pandaなどなどの科学技術に特化したパッケージ特有の使い方や計算速度といったところがヒューチャーされているので、数値計算をPythonでしたい人は必読かもしれないですね。
ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

ゼロから作るDeep Learning ―Pythonで学ぶディープラーニングの理論と実装

こちらも最近かなり人気のPython本ですね。こちらはPythonでDeep Learningをする方法がかかれています。Tensor Flowといった人気のライブラリを使うのではなく、一からDeep Learningを組むのでそこが人気の理由だと思います。これを読めばとりあえず深層学習についてかなり理解でき、さらに動かすこともできます。Pythonの基本的な操作方法に加えて大量のデータについての操作方法も記載されているのでそこらへんも便利だと思います。
みんなのRaspberry Pi入門 第3版

みんなのRaspberry Pi入門 第3版

これはRaspberry Pi使ってライントレース大会に出ようと思って買った本です。図が多くてとにかくわかりやすい。つまるところはほとんどなかったと思います。Raspberry Piのセッティングがしっかりしてあれば全く問題なく読み進めることができます。冒頭にやや簡単にPythonについての解説もあります。こちらはアプリケーショに対してRaspberry PiとPythonを使って解決するという流れで書かれているので、使いたいところだけをかいつまんで読むことができます。
WebIOみたいなのはうまく動かなかった覚えがありますが、全体としては難易度はかなり低くて、PythonとRaspberry Piを少し触ったことがある人なら難なく読み進めていくことが出来ると思います。

こう見ると2年間でかなりのPythonの本読んでますね。なんとなくPythonが好きなのと本も面白いのが多いので集まった感じですかね笑
これからもっともっと使っていきたいと思います。

2017/06/18の記事