あまやどり開発雑記

システムエンジニア裏薄荷が”あまやどり”という夢をつづったブログです。

MENU

※新米ママとして育児系のブログ 裏薄荷の初ママ日記も運営しております。

【連載】Pythonのライブラリや仮想環境ってなぁに? 第2回 ライブラリってなぁに?

ライブラリのイメージ、本棚がぎっしりとつまった図書館の写真です。

こんにちは。初めましての人もそうでない人も、裏薄荷(うらはっか)です。

※以下、以前BloggerでUpしていた記事を移行した内容になります。

 

さて、今日はPythonのプログラミング……の前に。

 

"ライブラリってなぁに?"
"仮想環境ってなぁに?"

 

と言葉の意味がわからず、

 

"プログラミングって難しい、わかんない!!”

 

とつまずいてしまった方のために、全3回に分けて説明をしていきます。

 

初心者が大まかなイメージをつかめることを目的にしているので、厳密には違う部分が出てくるかもしれませんが、そこはご容赦ください。

 

第2回は、"ライブラリ"という言葉のイメージについて説明していきます。

 

第1回で説明した"ファンクション"という言葉のイメージが掴めている前提ですので、まだお読みでない方はそちらを先にお読みください。

 

tnim-amayadori.hatenablog.com

 

 

第2回 ライブラリってなぁに?


さてファンクション(関数)のイメージをつかめたところで本題です。


ライブラリ、という言葉の意味について説明していきましょう。

 

Pythonソースコードを少しでも書いたことがある人は、こんな風に"from"や"import"と書かれているのを見たことがありますかね?

 

python
    from pandas import read_csv
import pandas

 

ここに書いてある"pandas"についてGoogle検索をかけてみると、

 

"データ解析を支援する機能を提供するライブラリである"

 

と説明が出てきます。

 

つまり"from"だったり"import"されている"pandas"はライブラリなわけです。

ライブラリ、という言葉はLibrary、直訳すると"図書館"です。

 

さてここで、第1回でお話したファンクション(関数)の話に戻りましょう。
ファンクション(関数)はお料理でいうレシピのようなもの、というお話をしました。

 

それに対してライブラリは、たくさんのレシピがつまった図書館、というイメージです。

 

本棚の前に座る人物のピクトグラム、図書館のイメージイラストです。

先ほどの料理の例で説明すると、例えば材料の基本的な下ごしらえの処理方法、わざわざあなたが新しく考える必要があるでしょうか?

 

……こだわる人は考えるかもしれませんが、調べればいくらでも他の人が考えた適切な下処理の方法がありますよね。webで検索をかけてもいいですし、何か本を買ってもいいかもしれません。

 

ライブラリもそれと同じで、よく使うような処理について、誰でも使いやすいようにまとめてあるので、あなたは0から処理を考える必要がありません。


先ほどの"pandas"の例で見てみましょう。

python
    from pandas import read_csv
import pandas
csv_path = r"C:\folder\sample.csv"
csv_data = read_csv(csv_path)

 

"pandas"はライブラリですが、"read_csv(CSV読み込み処理)"は"pandas"というライブラリ(図書館)が持っているファンクション(関数)です。

 

"read_csv(CSV読み込み処理)"の引数は"csv_path(CSVファイルのパス)"です。
それに対して戻り値"csv_data(CSVのデータ)"は、読み込んだデータです。

 

"read_csv"の中でどんな処理をしているか、あなたは意識する必要がありません。
あなたが意識するのは、引数と戻り値だけ。

 

先ほどの料理の例でいうと、どんな材料を渡してどんな料理ができあがるのか、それだけを意識すればいい、というわけです。

材料とできあがった料理だけを意識する人のシルエット、材料から料理になるまでの間のレシピについては意識していない。

 

例で取り上げた"pandas"は、"read_csv"のようにデータを読み込んだり、読み込んだデータを加工するための便利な機能が提供されています。"pandas"についてはまたあらためて記事を投稿します。

 

なんとなく、"ライブラリ"という言葉のイメージはつかめましたでしょうか?

 

次回は、「仮想環境ってなぁに?」というお話です。
引き続きお読みいただければ幸いです。

----------------------------------------------------------------
素材取得元:

 ----------------------------------------------------------------