「pythonで他のコードはうまく動作させられるのにライブラリを使うと動かなくなる」
「importやfrom, asなどのキーワードが何を意味しているのかわからず使っている」
「ライブラリによってpipコマンドが必要な時とそうでない時があるのが不思議に感じる」
本日はそのような方に向けてPythonにおけるライブラリの使い方をお話ししていきます。
Pythonにおいて、様々な機能やモジュールを利用するには、ライブラリのインポートが不可欠です。
しかし初心者の方にとっては、import
文やfrom
文、as
やto
、そしてpip
といった用語が少し戸惑いを生むこともあるでしょう。
この記事では、Pythonにおける異なるライブラリのインポート方法に焦点を当て、それぞれの違いや使いどころ、そしてpip
を使ったパッケージ管理についても紐解いていきます。
プログラミングの舞台裏でよく使われるこれらの要素を理解することで、より効果的かつ効率的なPythonコーディングが可能になるでしょう。
また動画もあるので必要に応じて活用してください。
Pythonでライブラリを使う時のインポート文の書き方
今回は例題としてmathと言う計算に便利なライブラリを使っていきます。
まずライブラリを使うときにはそのまま書くことはできなくて、インポート文という以下のような文言をプログラムの先頭に書きます。
# インポート文
import math
print(math.pi)
実際に使うのはprintの場所で、仮にimportの部分が抜けているとエラーになります。
通常のコードは書いた通りに動作するのですがライブラリというのは「外部にあるファイルを見る」という工程をコンピュータが行います。
そのためコンピュータに「mathと言うコードを借りてきて」という指令を出してあげる必要があるのです。
importを書くことでインポートできるのですがimportというのは基本的にはコードを丸っと全部持ってきます。
大体の場合はそれで問題ないのですが、「mathのpiだけしか使わないからpiだけ部分的に借りたい」というときは以下のように書きます。
# インポート文
from math import pi
print(pi)
この書き方によって「mathからpiをインポートする」という意味になります。
importに加えてfromを足すことで「〇〇から」という意味を追加します。
またprintの部分にも注目してもらうと、math.piではなくpiだけを書いています。
部分的なインポートをするとfromで書くmathといったライブラリ名を省略します。
つまり短いコードにすることができるわけですね。
さらにmathやpiなどの名前ですが、自分の好きな名前に置き換えることも可能です。
実際に使うかはプロジェクト次第ですが、例えば「mathというとわかりにくいからtestに変えたい」とします。
そのような場合はmathのようなライブラリ名に続けてasを足すことでmathを好きな呼び方に置き換えることができます。
import math as test
print(test.pi)
ちなみに少しやったことがある方なら「pipコマンドは使わないの?」と思われたかもしれません。
実はライブラリにも2種類あって「標準ライブラリ」「サードパーティライブラリ(外部ライブラリ)」というものです。
標準ライブラリはPythonが公式で用意した基本的なライブラリでpipコマンドを使ったインストール作業は不要です。
例えばJavaScriptでDateクラスという日付取得のコードがありますが、あれもnew Date()とすれば使えて特にターミナルで作業することはないですよね。
Pythonに限らず標準ライブラリは面倒な作業なく使えるようになっています。
一方でサードパーティライブラリ(外部ライブラリ)は「公式でなはい第三者が作ったもの」です。
危険なコードではないですが、公式で用意されたものではないのでpipコマンドを使ったインストール作業が必要になります。
自分が使うものがどちらかは「標準ライブラリかどうか?」で判断できます。
以下のサイトに標準ライブラリが一覧にして載っていますので、載っていないものはpipコマンドを使うことになるでしょう。
あとGoogleコラボトリーでpipコマンドを使うときは先頭に「!」をつけることになっているので覚えておいてください。