これまで、Python入門編としてブログラミングの基礎的な内容を学んで来ました。Pythonの基礎がまだの人はそちらをまずマスターしましょう。
そして、ここではPython応用編としてプログラミングの応用・実践的な内容に橋渡しできるような知識を学んで行こうと思います。このサイトでのPythonプログラミングの応用的な内容の記事へのリンクを目次的にここにまとめていきます。
Pythonの応用へ行く前に
Pythonの応用へ行く前に、Pythonの基礎知識からどうデータを扱って行くのか、Pythonのコードをキチンと書くにはどうやって行くのか、Pythonを触って行くための準備をしておこうと思います。
ファイルの操作
Pythonの基本的なところを学べば、もうすでにデータの扱いはできます。そのデータはこれまではターミナルのコンソール上などに表示していました。あるいはメモリの中です。このままだと、Macを閉じるなど電源が無くなればデータは消えてしまいます。入門編で学んだ操作で得たデータを失わないよう保存する為に、ファイルの一連の操作について学びます。
ファイルの作成と読み込み – open(),write(),read(),seek(),with
システム
ファイルの一連の操作はシステムの中でライブラリを使って操作することもできます。ここではオペレーティングシステムやシステム内のモジュールを使った操作の方法を学びます。
(随時記事を追加予定)
Pythonのコードの書き方とルール
Pythonのコードの書き方、例えばインデントなど少しは入門編でもところどころで触れて来ました。ですが、コードは動くので適当に書いている部分もありました。ここではPythonの応用へ進む前に、コードの書き方、コードスタイルのルールなどをもう少し詳しく触れて、Pyhonコードらしい書き方を学んでみようと思います。
コードの書き方とチェックツール – pycodestyle,flake8,pyLint
コードの書き方とスタイル規約の簡単理解 – ちょこっとPEP8
Pythonのその他の便利な知識
Pythonの基本的な知識は入門編で扱ってきました。
この応用編でも色々と触れるのですが、テーマとして扱わないものも出てくると思います。そこでここでは、これまでに触れていないライブラリやツール、その他の便利な知識などを扱っていこうと思います。
ファイルやフォルダの圧縮と展開 – tarfile, zipfile
printフォーマット – %s, .format(), f-strings
(随時記事を追加予定)
構造化されたテキストファイル
ファイルの操作において、ファイル作成、読み込み、書き込みは行いました。
CSVファイルを他で扱いましたが、他にも構造化されたテキストファイルあります。データのやり取りで様々なところで出てくるので見ておきましょう。
ロギング
プログラムの実行中に起こった出来事の記録をログといい、その記録することをロギングといいます。プログラムの実行時にエラーや意図しない挙動が起こった時に、このログを確認することで不具合の種類を絞り込むことができます。合わせてPythonからログをEmailで送信するコードも扱います。
ここではこのロギングについて見ていきたいと思います。
コンフィグ – fileConfig(), dictConfig()
Emailの送信 – 添付ファイルやSMTPハンドラーでログ送信
PythonでWebスクレイピングに挑戦
ここからはテーマを設けてPythonのいろんな使い方の基本を扱って行こうと思います。
まずはWebスクレイピングについて扱います。ここでは簡単な操作のみを扱います。より詳細な使い方については、別の独立したテーマでやっていこうと思います。
Webスクレイピングの準備 – BeautifulSoupのインストール
BeautifulSoupを使って簡単なWebスクレイピングに挑戦!
(別項目を設けてWebスクレイピングを詳細に扱う予定)
tkinterとGUIアプリ
グラフィックスについてはturtleモジュールで簡単なお絵かきをやりました。
ここではもう少し実践的なGUIアプリをtkinterを通じて見ていきたいと思います。
(随時記事を追加予定)
Pytonでデータ分析の基礎を速習
Pythonプログラミングを使ったデータ分析については別のところでデータ分析入門編としてじっくりやりますが、ここでは基本的な部分をjupyter notebookで動かしてさらっと一気に触れてみたいと思います。始める前に、jupyter notebookの使い方には目を通しておきましょう。
NumPy、Pandas、Matplotlibの速習
まず、データ分析でよく利用されるライブラリのNumPy、Pandas、Matplotlibについて、簡単に使い方をみていきます。
単回帰分析に挑戦
ここまで扱った内容を使って家賃の予測を単回帰分析を使って挑戦してみます。
NumPy、Pandas、Matplotlibと単回帰分析で家賃の予測
scikit-learnでデータ分析の速習
NumPy、Pandas,、Matplotlibでデータの扱い方を速習しましたが、Pythonで機械学習を行うことができるオープンソースのライブラリscikit-learnも使って、簡単なデータ分析の例を見ていきましょう。
NumPy、Pandas、Matplotlib、scikit-learnと簡単にデータ分析を見てきましたが、さらに詳しい操作についてはこちらで順次扱います。
PythonとOpenCVを使った画像処理の基礎
Pythonのデータ分析でライブラリのNumPy、Pandas、Matplotlibなどを使いますが、機械学習の中で画像認証と言ったものも扱われており、画像や動画の処理も必要になってきます。
画像や動画の処理に特化したライブラリにOpenCVがあります。OpenCVを使った基本的な画像処理を学びますが、それはこちらで扱っていきます。
webと通信
Webはクライアントサーバーシステムとなっています。クライアントはサーバーに要求(リクエスト)して、サーバーはHTTPを介して情報を送り、応答(レスポンス)を受け取ります。ここではこのHTTP接続を行うPythonのライブラリを使ってWebの通信のやり取りについて見ていきましょう。
標準ウェブライブラリurllib – urllib.request
ローカルwebサーバーの立ち上げ – socketserver
(随時記事を追加予定)