第18回|Pythonのモジュールとは?importで機能を増やす方法をやさしく解説|はじめてのPython

* 当サイトでは、コンテンツの一部に広告を掲載しています。

System Note $ cat /proc/ai-disclosure

本記事の構成および論理分析にはAI(人工知能)を使用しています。情報の正確性は、システム管理者(UNIXユーザー)による手動検証済みです。

第18回|Pythonのモジュールとは?importで機能を増やす方法をやさしく解説|はじめてのPython

はじめてのPython | 第18回

目次

1. はじめに

この回では、モジュールを使ってPythonの機能を増やす方法を学びます。前回は、スコープとローカル変数を確認しました。

Pythonには、最初から多くの機能が用意されています。それらを必要に応じて読み込んで使うと、自分で一から全部を書かなくても、さまざまな処理を行えます。

2. この回で学ぶこと

  • モジュールとは何か
  • import の基本
  • 標準ライブラリとは何か
  • random の使い方
  • datetime の使い方

3. 概念の説明

モジュールは、機能をまとめたPythonのファイルです。必要なモジュールを読み込むことで、その中にある機能を使えるようになります。

モジュールを読み込むときは、import を使います。

import random

このコードは、random というモジュールを使えるようにするという意味です。

Pythonには、最初から使えるモジュールが多く用意されています。このような標準で用意されている機能の集まりを、標準ライブラリと呼びます。

たとえば、乱数を使いたいときは random、日付や時刻を扱いたいときは datetime を使えます。

random モジュールには、乱数を作る機能があります。

import random

number = random.randint(1, 6)
print(number)

random.randint(1, 6) は、1から6までの整数を1つ返します。実行するたびに結果が変わる可能性があります。

datetime モジュールには、日付や時刻を扱う機能があります。

import datetime

now = datetime.datetime.now()
print(now)

datetime.datetime.now() は、実行した時点の現在の日時を返します。そのため、表示される内容は実行した日時によって変わります。

モジュールを使うときは、import したあとで モジュール名.機能名 の形で書くのが基本です。

4. サンプルコード

次のコードを見てください。

import random
import datetime


number = random.randint(1, 10)
now = datetime.datetime.now()

print("乱数:", number)
print("現在の日時:", now)

このコードでは、random で乱数を作り、datetime で現在の日時を取得しています。2つのモジュールを読み込むことで、別々の機能を同じプログラムで使えます。

5. 実行手順

まず、module_sample.py というファイルを作ります。

touch module_sample.py

module_sample.py をエディターで開き、次のコードを書いて保存します。

import random
import datetime


number = random.randint(1, 10)
now = datetime.datetime.now()

print("乱数:", number)
print("現在の日時:", now)

保存したら、ターミナルで次のコマンドを実行します。

python3 module_sample.py

実行結果は次のようになります。

乱数: 7
現在の日時: 2026-04-13 10:30:00.123456

乱数 の値と 現在の日時 は、実行のたびに変わる可能性があります。特に日時は、実行した時点の値が表示されます。

6. コードの読み方

  • import random は、random モジュールを読み込んでいます。
  • これによって、random の機能を使えるようになります。
  • import datetime は、datetime モジュールを読み込んでいます。
  • これによって、日時を扱う機能を使えるようになります。
  • number = random.randint(1, 10) は、1から10までの整数を1つ作り、その値を number に入れています。
  • random.randint のように、モジュール名と機能名を . でつないで書きます。
  • now = datetime.datetime.now() は、現在の日時を取得して now に入れています。
  • このコードでは、datetime モジュールの中にある datetime という機能を使い、その now() を呼び出しています。
  • print("乱数:", number)print("現在の日時:", now) は、それぞれ取得した値を表示しています。

7. 初学者がつまずきやすい点

  • モジュールは使う前に import が必要
  • randomdatetime は標準ライブラリの一部
  • モジュールを読み込んだあとで モジュール名.機能名 と書く
  • random.randint(1, 10) の結果は毎回同じとは限らない
  • datetime.datetime.now() の結果は実行時刻によって変わる

特に、random を読み込んだだけでは数字は出ません。random.randint(...) のように、モジュールの中の機能を呼び出す必要があります。

また、日時は固定の値ではありません。記事の実行例と同じ数字にならなくても正常です。

8. よくあるエラー

1つ目は、import を書かずにモジュールの機能を使おうとする場合です。

number = random.randint(1, 10)
print(number)

このときは、次のようなエラーになります。

NameError: name 'random' is not defined

random を使う前に、import random が必要です。

2つ目は、モジュール名を付けずに機能だけを書いてしまう場合です。

import random

number = randint(1, 10)
print(number)

このときも、次のようなエラーになります。

NameError: name 'randint' is not defined

今回の基本形では、random.randint(1, 10) のようにモジュール名を付けて書きます。

3つ目は、ファイル名を標準ライブラリと同じにしてしまう場合です。

たとえば、作業用ファイルを random.pydatetime.py という名前にすると、標準ライブラリではなく自分のファイルが読み込まれることがあります。初学者の段階では、このような名前は避けるほうが安全です。

9. 練習用コード

次のコードを practice_module.py として保存して実行してください。

import random
import datetime


dice = random.randint(1, 6)
today = datetime.datetime.now()

print("サイコロ:", dice)
print("日時:", today)

実行したあとで、サイコロの数字と日時が表示されることを確認してください。

余裕があれば、random.randint(1, 100) に変えて、1から100までの数字が出るようにしてください。

10. この回で理解しておくこと

  • モジュールは機能をまとめたPythonのファイル
  • import でモジュールを読み込む
  • 標準ライブラリは最初から使える機能の集まり
  • random で乱数を作れる
  • datetime で現在の日時を扱える

11. まとめ

今回は、モジュールを使って機能を増やす基本を確認しました。import を使うと、Pythonに最初から用意されている便利な機能を使えるようになります。

randomdatetime は、標準ライブラリの代表的な例です。まずは、モジュールを読み込み、モジュール名.機能名 の形で使う流れに慣れてください。

12. 次回予告

次回は、ファイルを読み込む方法を学びます。openwith を使って、テキストファイルの内容を扱う基本を確認します。

復習してみよう

復習したい方は、こちらもあわせてご覧ください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

のいのアバター のい UNIX Cafe マスター

Macintosh Color Classicから始まった旅は、長いWindows時代を経て、Windows10のサポート終了をきっかけにUNIXの世界へ戻ってきました。UNIX Cafeでは、UNIX・Linux・そしてMacな世界を、むずかしい言葉を使わず、物語のように書いています。プログラミングは、アイデアをコンピューターに伝えるための言葉です。簡単な単語と文法を覚えれば、誰でもコマンドを使えます。ぜひ一度、やさしいプログラミングの世界をのぞいてみてください。

Created by UNIX Cafe

目次