【Python第8回】モジュールと標準ライブラリ

Python基礎講座 全10回(第8回)

【Python第8回】モジュールと標準ライブラリ

Pythonの最大の武器である、豊富な機能群「ライブラリ」をロードする仕組みを学びます。モジュールを読み込むための `import` の基本と、標準搭載されている代表的な機能の使い方を習得しましょう。

📌 Python講座ロードマップ一覧(クリックで移動)

1. モジュールとライブラリとは?

自分で書いたプログラムの他に、世界中のエンジニアが開発した便利な部品(関数や処理のクラス)を再利用するためのファイルを **「モジュール(Module)」** と呼びます。また、たくさんのモジュールを束ねてひとまとめにした巨大な機能集を **「ライブラリ(Library)」** と呼びます。

Pythonは「電池付属(Batteries Included)」という思想を持っており、自分で新しくインストールしなくても、最初から非常に高度なモジュールが**「標準ライブラリ」**として豊富に同梱されているのが最大の強みです。

2. モジュールをロードする import 文

モジュールの中に定義されている関数などを自分のプログラムで使いたい時は、コードの最上部に `import モジュール名` と記述します。

モジュール内の関数を呼び出す際は、`モジュール名.関数名()` のようにドット `.` で繋いで指定します。

3. 実務でよく使う2大標準モジュール

Pythonに最初から組み込まれている非常に便利なモジュールの代表例です。

  • math モジュール: 三角関数や対数、円周率の取得、小数点以下の切り上げ・切り捨て(`math.ceil()` / `math.floor()`)など、高度な数学計算をサポートします。
  • random モジュール: 乱数(ランダムな数値)を生成するためのモジュール。サイコロの目をランダムに出す処理や、リストからランダムに1つの要素を選び出す処理(`random.choice()`)などを簡単に実行できます。

4. 標準ライブラリを使って計算・乱数を作るコード

以下のコードは、mathモジュールとrandomモジュールをインポートし、切り捨て計算やランダム数値の取り出しを行うプログラム例です。

libraries.py
import math
import random

# 1. mathモジュールによる切り捨て
num = 5.8
print(math.floor(num))  # 小数点以下を切り捨てて「5」が表示される

# 2. randomモジュールによる1〜6のランダム整数
dice = random.randint(1, 6)
print(dice)  # 実行するたびに1から6のいずれかがランダムに表示される

# 3. リストからランダムに1つを抽出
box = ["大吉", "中吉", "小吉"]
result = random.choice(box)
print(result)  # ランダムにおみくじ結果が返る

📌 import 文はコードの最上部にまとめる

プログラムの途中で `import` 文を記述することも文法上は可能ですが、コードの可読性を高めるため、また実行時の依存関係をわかりやすくするために、**「モジュールのインポートはスクリプトファイルの最上部(1行目付近)にまとめて書く」**のがPythonの業界標準の紳士協定ルールとなっています。

✍️ 第8回 理解度チェック(問題)

Pythonで別の外部ファイルやライブラリのモジュールをプログラム内に読み込んで使用可能にするために、文頭に記述する英小文字6文字のキーワードは何でしょうか?

※この問題の解答と解説は、ページ最下部(まとめの前)に掲載しています。

5. まとめと次回予告

第8回の講義はお疲れ様でした!今回の重要ポイントを振り返りましょう。

  • モジュールは他のファイルに記述された便利なコード部品。
  • `import モジュール名` を最上部に宣言して利用を開始する。
  • `math` (計算用) や `random` (乱数用) などの強力な標準ライブラリが最初から内包されている。

次回(第9回)は、プログラムの外部からデータを読み書きする「テキストファイルの読み込み・書き込み」および、エラーが起きた際に安全に処理を行う「例外処理(try-except)」について学びます。お楽しみに!

🔑 第8回 理解度チェックの解答と解説

【解説】

正解は **`import`** です。 `import math` のように宣言することで、モジュール内に書かれている複雑な関数群を自分のファイル上に引き込み、`.`(ドット)を通じて簡単に呼び出して使えるようになります。他のモジュール資産を手軽に再利用するための大黒柱のような命令です。