Pythonにはたくさんの標準または外部ライブラリがありますが、その豊富さゆえにどのライブラリを活用すればいいのかわかりづらい面もあると思います。今回は、その中から知っておくと便利なPythonのライブラリをご紹介します。
標準ライブラリ編
datetime
日付や時刻を扱うモジュールです。日付・時刻の取得、文字列⇔日付の変換、n日後、n日前の日付データを取得する、等便利で簡単に扱えるものが揃っています。例えば、日付と時間をまとめて扱えるdatetimeオブジェクトを使えば、現在の日付と時刻を簡単に取得できます。
from datetime import datetime now = datetime.now() print(now) # 2016-04-13 02:29:50.464488
shutil
高水準なファイル操作を提供するモジュールです。ファイルのコピーやディレクトリに対する操作を非常に簡単に書くことができます。
import shutil shutil.copy("/src/src.txt", "/hoge/hoge.txt")
src.txtファイルをhoge.txtファイルににコピーします。
collections
deque(appendやpopを高速に行う)、OrderedDict(順序付き辞書)、defaultdict(デフォルト値のある辞書)、Counter(カウンター付き辞書)等があります。効率的なアルゴリズムの実装や、プログラミングコンテスト等ではお世話になります。
from collections import Counter count = Counter('hogehoge') print count # Counter({'g': 2, 'e': 2, 'h': 2, 'o': 2})
pdb
ブレークポイントの設定やソース行レベルでのシングルステップ実行等の機能を提供するデバッガです。インタラクティブシェルでの実行や、.pyなどのスクリプトファイルとして実行することもできます。
timeit
Pythonプログラムの実行時間を計測するモジュールです。コード1つ1つに対して時間を計ることができるため、細かいパフォーマンスを計れます。
import timeit timeit.timeit('"-".join(str(n) for n in range(100))', number=10000)
NumPy
NumPyは科学技術計算などで配列や行列の演算を高速で行うために使われます。研究などで数学的な計算をしたいときに、非常に有効なライブラリとなっています。
import numpy n_array = numpy.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) print(n_array)
matplotlib
matplotlibを使えばPythonでデータをグラフにプロットできるようになります。
グラフの表示にはmatplotlib.pyplotモジュールのplot()およびshow()を使用します。
from matplotlib import pyplot pyplot.plot(x軸, y軸) pyplot.show()
scipy
scipyではnumpyで行える配列や行列の演算を行うことができ、加えてさらに信号処理や統計といった計算ができるようになっています。
from scipy import integrate #必ず必要 変数1, 変数2 = integrate.quad(関数, 積分区間の始まり, 積分区間の終わり)
外部ライブラリ編
tqdm
ループの進捗を確認したい時に、以下のような進捗バーを簡単に作成することができます。
41%||█████████ | 41/100 [00:04<00:05, 10.00it/s]
py2exe
PythonスクリプトをWindows用の.exeへ変換するライブラリです。Mac版の「py2app」や、汎用的な「PyInstaller」も有名です。
simplejson
JSONのエンコード・デコードライブラリです。標準ライブラリに「json」がありますが、それと同じように使用することができ、更に高速に動作するのが特徴です。
import simplejson
requests
使いやすいHTTPライブラリです。標準ライブラリに「urllib」がありますが、使い勝手が少々悪いものでした。requestsは非常に使いやすく、最近の書籍でもよく薦められています。
import requests r = requests.get('URL') print r.text
pep8
ソースコードのチェックツールです。PythonにはPEP8というスタイルガイドがあり、これが一般的なコーディング規約となります。pep8を使うと、自分のコードはどこが違反しているかを知らせてくれます。
【おすすめ記事】
➡オススメのPython学習サイトはこちら
➡Pythonを学びたい方は必見!おすすめスクールまとめ5選
➡Python チュートリアル(公式)の口コミ・評判
➡【Python入門】Pythonにおけるclassの使い方とは?