Pythonのよく使うライブラリ一覧!一段上の開発を目指そう
development
Pythonのよく使うライブラリ一覧!一段上の開発を目指そう
プログラミング言語
アンドエンジニア編集部
2021.05.25
この記事でわかること
Pythonのライブラリを使うことで、開発作業が楽になる
Pythonにはrandom・datetime・os・re・math・sysなど頻繁に使うライブラリがある
Pythonにはsklearn、pandas、Numpyなど機械学習向けライブラリもある

Python関連記事はこちらから↓

Pythonの記事(1ページ目)

Pythonのライブラリとは?

certification

Pythonのライブラリとは何かについて、解説します。ライブラリの使い方やフレームワークとの違いについてもご紹介しましょう。まず始めに、ライブラリに関する基礎知識を押さえるところから始めます。

ライブラリとは?

ライブラリとは、複数のプログラムをまとめ、再利用しやすくしたものです。プログラミングでは、同じコードを何度も書くのは非効率とされています。そこで、多く使う機能はライブラリにまとめ、何回でも使えるようにするのです。ライブラリを使うことで自分でソースコードを書く必要がなくなり、開発作業が楽になります。また、機械学習などの複雑な開発もライブラリを使えば簡単に行えます。

ライブラリの使い方

ライブラリを使う場合、ソースコードの上に「import ライブラリ名」と記述する必要があります。これでインストールされているライブラリを呼び出すことが可能です。また、ライブラリの中の特定オブジェクトだけ使いたい場合は、「from モジュール名 import オブジェクト名」と記述します。Pythonでライブラリを利用する場合、import文の記載を忘れないようにしましょう。

ライブラリとフレームワークの違い

ライブラリとフレームワークはよく混同されがちですが、厳密には異なるものです。どちらも、複数のプログラムをひとまとめにした点は共通しています。しかし、フレームワークはより大きなまとまりになったものであり、プログラム全体の流れを限定させるものです。

例えていうなら、フレームワークは「枠組み」のようなものです。どのフレームワークを使うかまず決め、それからプログラミングを行います。一方で、ライブラリは、プログラミングに必要なものを一部「引用」して使います。ライブラリは、プログラム全体の流れを決めるものではありません。

Pythonのフレームワークは、「Django」「Flask」「web2Py」などが挙げられます。

必ず使うPythonライブラリ6選

woman

それでは、Pythonのライブラリについて解説します。まずは、最低限覚えておきたいライブラリを6つ紹介します。これらのライブラリは初学者であっても、使う頻度の高いものばかりです。これらの使い方は押さえておいた方が良いでしょう。

random

randomは、ランダムの数値を生成できるライブラリです。何らかの数値を出したい場合は、randomを利用します。例えば、おみくじやじゃんけんアプリを作りたい場合は、randomを使って乱数を生成すると良いでしょう。randomは使う頻度が多いライブラリの1つです。

datetime

datetimeは、日付や時間を扱うためのライブラリで、今日は何日か数年前の日時を取得することが可能です。日付情報を扱いたい場合、datetimeライブラリを利用することになるでしょう。ただし、取得した日付のデータを整形したい場合は、他の種類のライブラリが必要になります。

os

osは、OSに関連した処理を行うためのライブラリです。OSに関連した処理とは、例えばファイルを削除したりディレクトリを作成したり、といった内容のことです。Pythonでファイル操作を行いたい場合は、osライブラリを使うことになるでしょう。こちらも利用頻度が高いので、覚えておきたいところです。

re

reは、正規表現を使うためのライブラリです。正規表現を使うことで、特定のパターンにマッチする数値かどうかを判定することができます。例えば、フォームに入力されたメールアドレスや電話番号が、書式に沿っているかなどを判定することが可能です。正規表現はPythonの基礎文法の1つであり、reライブラリは使う頻度が高いでしょう。また、import文を書き忘れることが多いライブラリなので、注意が必要です。

math

mathは、数学的処理を行うためのライブラリです。四則演算だけなら、ライブラリなしで可能ですが、複雑な計算処理などを行いたい場合は、mathに頼ることが多いです。例えば、絶対値や円周率を取得したい場合は、mathライブラリを使うと楽です。他にも、指数関数・対数関数・三角関数といった、高校・大学数学で用いられる関数が使えます。Pythonは機械学習で多く使われることもあり、その影響でmathライブラリの利用頻度も高いです。

sys

sysは、実行環境に関する処理を行うライブラリです。Pythonではインタプリタを使って、ソースコードを機械語に翻訳しているのですが、そのインタプリタに関する関数がまとめられています。例えば、プログラムを強制終了させたい場合は、sysライブラリのexit関数が便利です。sysライブラリも、Pythonの基本的なライブラリの1つです。

便利なPythonライブラリ5選

data scientist

続いて、覚えておくと便利なPythonライブラリを紹介します。これらのライブラリは利用頻度は高くないものの、いざというときに頼りになるものばかりです。ライブラリなしでは実装が難しいことが多いので、覚えておくと良いでしょう。

pip

pipは、パッケージに関する様々な操作を行えるライブラリです。Pythonでパッケージを扱いたいなら使用頻度は高くなります。例えば、パッケージをインストールしたり、アップデートしたりする際に、pipライブラリを使うことになります。

matplotlib

matplotlibは描画ライブラリです。棒グラフや折れ線グラフなどを描画したい場合に使います。Pythonで画像解析や数値解析を行う場合に、用いられることが多いライブラリです。

Pillow

Pillowは、画像処理を行うためのライブラリです。例えば、画像の拡大や画像の読み込みをすることができます。画像処理の基本的なことを網羅しているライブラリです。もっと高度なことがしたい場合は、他の画像処理のライブラリが必要になる場合もありますが、ひとまずPillowの使い方を覚えると良いでしょう。

requests

requestsは、Webサイトのデータを取得するためのライブラリです。Webサイトの文章や画像を取得し、ローカル環境で扱うことができます。Pythonでスクレイピングを行う場合、なくてはならないライブラリです。

beautifulsoup

beautifulsoupは、HTMLファイルを解析するためのライブラリです。HTMLファイルから、特定タグの部分を抜き出すなどができます。requestsと合わせて、スクレイピングを行う場合に利用されるライブラリです。

機械学習で使うPythonライブラリ3選

monitor

続いて、機械学習で使われるPythonライブラリを紹介します。Pythonは機械学習に向いている言語ということはご存知の方も多いでしょう。機械学習用のライブラリは数多くありますが、Pythonで機械学習や統計解析を行いたい場合は、本記事で紹介する3つのライブラリをまず覚えましょう。

sklearn

sklearnは機械学習専門のライブラリです。機械学習に必要なあらゆる機能がsklearnにまとめられています。教師あり学習・教師なし学習・モデル選択・モデル評価・データセットの読み込み、などの機能が豊富です。機械学習をこれから勉強する方は、sklearnの使い方を押さえるところから始めるのがおすすめです。Pythonで機械学習を行う場合、sklearnライブラリはなくてはならない存在です。

pandas

pandasは、データ解析用のライブラリです。膨大なデータを読み込み統計量を表示したり、データをグラフ化したりすることができます。pandasも機械学習を行う上で、多く使われるライブラリです。

Numpy

Numpyは、科学技術計算で使われるライブラリです。機械学習で必要な複雑な計算処理も、Numpyを使えば簡単に行えます。また、処理速度が早いのも、Numpyを使うメリットです。Pythonは処理速度が遅い言語のため、「機械学習には向いていないのでは?」と思う方もいるかもしれません。しかし、Numpyを使えば複雑な計算も素早く行えるため、Python自体の処理速度は関係なくなります。Numpyも機械学習を行う上では必須といえるライブラリでしょう。

Pythonのライブラリを使いこなして一段上の開発を

skill development

Pythonには豊富なライブラリがあることがお分かりいただけたでしょうか。Pythonはライブラリを使うことで開発が楽に行えるため、初心者向きといわれています。Pythonの基礎文法をマスターした方は、ライブラリについて学習すると一段上の開発が可能になります。本記事が、Pythonのライブラリについて知りたい方にとって有意義なものとなれば幸いです。

Twitterをフォローしよう!
アンドエンジニアの公式LINEができました! ピッタリの記事や役立つ情報が届きます!

編集部オススメコンテンツ

eyecatch_visual_coder
Adobe製品を使わない"デザイナー"?「ビジュアルコーダー」が考える、自己満足で終わらないWebデザインとは
三角
2020.06.16

アンドエンジニアへの取材依頼、情報提供などはこちらから

お問い合わせ・情報提供
この記事をシェア
Twitter
Facebook
LINE
Hatena
アンドエンジニアの公式LINEができました! ピッタリの記事や役立つ情報が届きます!

編集部おすすめコンテンツ

アンドエンジニアへの取材依頼、情報提供などはこちらから