やっほー!国内のAI狂いだよ!✨
第21回へようこそ!ここからはPythonの真骨頂、「標準ライブラリ」の世界を探検するよ。
Pythonには「バッテリー同梱(Batteries Included)」っていう哲学があって、「インストールした直後から、便利な機能が全部そろってる状態」を目指しているの。
おもちゃを買ったのに「電池は別売りです」って言われたらがっかりするでしょ?Pythonは最初からフルパワーで遊べるんだよ!🔋⚡
公式の「ここがわかりにくい」:OSインターフェース?
公式ドキュメントの「標準ライブラリミニツアー」のっけからこれです。
os モジュールは、オペレーティングシステムと対話するための多くの関数を提供しています
「オペレーティングシステム(OS)と対話」…つまり、WindowsやMacといった「パソコン自体を操作する機能」ってこと!
フォルダを作ったり、ファイルを移動したり、今どこにいるか確認したり。
Pythonの中からパソコンを操れるようになると、自動化(RPA)の夢が広がるね!🤖
1. パソコン操作の基本セット:os, shutil, glob
まずは、ファイル整理を自動化したい時によく使う3つのモジュールを紹介するよ。
① osモジュール:場所の確認と移動
import os
# 今いる場所(カレントディレクトリ)を表示
print(os.getcwd()) # Get Current Working Directory
# 場所を移動する(cdコマンドと同じ)
# os.chdir('/server/accesslogs')
② globモジュール:ファイル探し
「*.jpg」みたいにワイルドカードを使ってファイルの一覧を取得できるよ。
import glob
# 拡張子が .py のファイルを全部探す
files = glob.glob('*.py')
print(files)
# -> ['main.py', 'test.py', 'setup.py']
③ shutilモジュール:コピーと移動
ファイルのコピーや移動は os ではなく shutil (Shell Utilities) を使うのが一般的だよ。
import shutil
# data.db を archive.db にコピー
# shutil.copyfile('data.db', 'archive.db')
# フォルダごと移動
# shutil.move('/build/executables', 'installdir')
2. sysモジュール:Pythonそのものを操る
sys モジュールは、Pythonインタプリタ自身に関する情報や機能が詰まっているよ。
特に重要なのが、外からデータを受け取る「コマンドライン引数」だね。
🐍 サンプルコードを見る(クリックで開閉)
import sys
# 実行時に渡された引数リスト
# python myscript.py arg1 arg2 と実行した場合...
print(sys.argv)
# -> ['myscript.py', 'arg1', 'arg2']
# 0番目は必ず「スクリプトファイル名」になる点に注意!
スクリプトを強制終了させたい時の sys.exit() もよく使うよ!
3. 計算とくじ引き:math, random
計算系のライブラリも充実しているよ。
① mathモジュール
円周率や三角関数など、数学的な計算はお任せ。
import math
print(math.pi) # 円周率: 3.14159...
print(math.sqrt(16)) # 平方根: 4.0
② randomモジュール(試験頻出!)
ランダムな処理(乱数)は、ゲーム作りやデータ分析で必須だね。
🐍 実験コードを見る(クリックで開閉)
import random
# リストからランダムに1つ選ぶ
menu = ['そば', 'うどん', 'ラーメン']
print(random.choice(menu))
# 0.0 以上 1.0 未満の乱数
print(random.random())
# 範囲指定の整数(1〜6)
print(random.randrange(1, 7)) # 7は含まない!
# または randint(1, 6) # こっちは6を含む!ややこしい!
うどん
0.7384…
4
4. 時間を操る:datetime
「今日の日付は?」「昨日の日付は?」といった処理には datetime モジュールを使うよ。
🐍 サンプルコードを見る(クリックで開閉)
from datetime import date
# 今日の日付
today = date.today()
print(f"今日は {today} です")
# フォーマット指定(書式化)
print(today.strftime("%Y年%m月%d日"))
# -> 2025年11月XX日
試験に出る!要注意ポイント
今回の範囲で、Python 3 エンジニア認定基礎試験によく出るポイントをまとめたよ!📝
① dir() と help()
ライブラリの使い方がわからない時、ドキュメントを見に行かなくてもPythonに聞くことができるよ。
dir(モジュール):そのモジュールに入っている関数や変数の名前リストを表示。help(モジュール):使い方の説明書(ドキュメント)を表示。
② from os import * はNG!
os モジュールには open() という関数があるんだけど、これはPythonの組み込み関数 open() とは別物。
もし from os import * をしちゃうと、便利な組み込み open() が上書きされて使えなくなっちゃうんだ(遮蔽というよ)。
だから必ず import os として、os.open() の形で使うのが鉄則だよ!
random.sample(list, 3) でリストから3つ選ぼうとしたら、「要素数が足りません」ってエラーになったことあるよ。sample は「重複なし」で選ぶから、リストの中身が3個未満だとエラーになるんだ。重複ありで選びたい時は
random.choices (sがつく!) を使わなきゃいけないんだよね。名前似すぎ!😭
理解度チェック!ミニクイズ
標準ライブラリの基本、理解できたかな?
試験レベルの問題でチェックしてみよう!🔍
現在のディレクトリ(フォルダ)のパスを取得する関数は?
▼ クリックで正解を表示
os.getcwd()
解説:
Current Working Directory の略で getcwd() だよ。
os.curdir は '.' という文字を返すだけの定数だから注意!
コマンドライン引数を受け取るためのリストはどれ?
▼ クリックで正解を表示
sys.argv
解説:
引数(arguments)のベクトル(vector)で argv。
C言語由来の伝統的な名前だね。sys モジュールに入っているよ。
ワイルドカード(*.txtなど)を使ってファイルリストを取得するモジュールは?
▼ クリックで正解を表示
glob
解説:
glob.glob('*.txt') のように使うよ。
shutil はファイルの移動やコピーに使うモジュールだね。
まとめ:次回への引き
今回は「標準ライブラリツアー(その1)」をお届けしたよ!
全部覚える必要はないけど、「こういう機能があるんだ」って知っておくだけで、無駄な車輪の再発明を防げるよ✨
次回は、エラーと上手に付き合う方法!
テーマは「転ばぬ先の杖!例外処理(try-except)」だよ。
プログラムが予期せぬエラーで「ドンッ!」と落ちるのを防いで、優しく対処する方法を学ぶよ。
これが書けるようになると、一気にプロっぽいコードになるからお楽しみに!👋✨
出典: Python公式チュートリアル
Copyright © 2001-2026 Python Software Foundation. Licensed under the PSF License.






