Photo by hoerner_brett
秋山です。
私は主にPythonを使って開発をしているので、今回はPythonの便利なライブラリやフレームワークを紹介していきたいと思います。
といっても割と定番のものを中心に使っているので、既にPythonをがんがん使っている人にとっては「知ってるわ!」というものも多いかと思います。「最近Python書くようになりました~」という人たちにも「これ良い!」ってものが見つかればと思います。
ちなみに前回はPython2系と3系の違いについて書いてますので、「3系に移行しよっかなー」と考えている人は合わせて見てみてください。
paiza.hatenablog.com
■Pythonの便利なライブラリやフレームワーク
◆Web開発系フレームワーク
◆データ処理、数値計算用
※数値計算系のはほぼScyPyプロジェクトのものですね。
◇NumPy
メジャーな数値計算用ライブラリですね。Pythonは、数値計算を素直に書くと処理が遅めな言語ではありますが、NumPyを使えばC言語のネイティブコード上で計算してくれるのでめちゃくちゃ速くなります。
◇pandas
こちらも速度が必要な部分はC言語などで書かれているので高速に動いてくれるデータフレームライブラリです。時系列データなどの扱いが大変楽になってよいです。あと欠損値の補完や変形など、楽にデータ操作をするための機能が多数あるところもよいです。
◇SciPy library
↑この3つにさらにこれを加えて使われることがあります。科学系の計算とかいろんな計算ができますよ。
◇Jupyter
これはライブラリというかPythonで分析をした際の記録用ツールで、コードやコメント、データなどをひとまとめに残しておけるツールです。
さらにpy_d3を使うとJupyter内でd3.jsのグラフなども表示できるようになって、より見た目をよくすることができます。逆に見た目は別に気にしないという場合は↑のmatplotlibだけで充分かもしれません。
◆UIとかゲーム関連
◇kivy
クロスプラットフォームのUIライブラリです。スマホとかマルチタッチ対応もできるのが便利です。
◇cocos2d
今さら紹介する必要なさそうな言わずと知れたゲームライブラリですね。Objective-CやSwiftでゲームが作れるということで有名ですが、実はPythonがオリジナルです。
◆スクレイプとかAPI叩く関連
◆その他
◇Twython
Twitter APIのラッパーですね。たまにTwitter関連のデータ集計が必要なときに使っています。
■まとめ
割と定番のものを中心に紹介してきました。このほかにも、Pythonには機械学習のためにデータを処理するライブラリ(数値演算をするためのライブラリとか図を作成するライブラリとか)がそろっていて、呼び出したり組み合わせて処理したりしやすいので、最近はたくさんの人が機械学習でPythonを使ったり勉強を始めたりしてますねー。
paizaでもPythonが学べる動画学習コースを公開していますので、初心者だけどPythonに興味ある!という人はぜひのぞいてみてください。
paizaは、技術を追い続けることが仕事につながり、スキルのある人がきちんと評価される場を作ることで、日本のITエンジニアの地位向上を目指したいと考えています。
自分のスキルを磨いていきたいと考えている方におすすめなのが「paizaラーニング」。オンラインでプログラミングしながらスキルアップできる入門学習コンテンツです。初心者でも楽しくプログラミングの基本を学ぶことができます。
そして、paizaでは、Webサービス開発企業などで求められるコーディング力や、テストケースを想定する力などが問われるプログラミングスキルチェック問題も提供しています。
スキルチェックに挑戦した人は、その結果によってS・A・B・C・D・Eの6段階のランクを取得できます。必要なスキルランクを取得すれば、書類選考なしで企業の求人に応募することも可能です。「自分のプログラミングスキルを客観的に知りたい」「スキルを使って転職したい」という方は、ぜひチャレンジしてみてください。