【Python】そのコード、なんて読む? 〜scikit-learn・linalg・ord から strftime まで〜
こんにちは。ゆうせいです。
はじめに
Pythonのコードを声に出して読もうとすると、途端に詰まる瞬間があります。
ord()は オード? オーアールディー?np.linalgの linalg って何て読むんだ……scikit-learnは サイキット? スキット?
Pythonの識別子は、その多くが 英単語の省略形です。つまり「読めない」の正体は、たいてい「元の英単語が分かっていない」だけ。逆に言えば、元の綴りさえ分かれば読み方も意味も同時に手に入ります。
この記事では、初見で読み方に迷いやすいPythonの関数名・モジュール名・ライブラリ名を、読み方+元の英単語(何の略か)とセットで一覧化しました。
読み方が現場で割れているものは複数併記しています。「どちらでも通じる」くらいの気持ちで読んでください。
1. 組み込み関数・キーワード
| コード | 読み方 | 元の綴り・ひとこと解説 |
|---|---|---|
ord() | オード | ordinal(序数)。文字をUnicodeコードポイント(整数)に変換する。「オーアールディー」ではありません。 |
chr() | チャー/シーエイチアール | character。ord() の逆。整数から文字を作る。 |
repr() | レプル/リプル | representation。オブジェクトの「公式な文字列表現」を返す。 |
len() | レン | length。 |
abs() | アブス | absolute。絶対値。 |
pow() | パウ | power。べき乗。 |
divmod() | ディブモッド | division + modulo。商と余りを同時に返す。 |
eval() | イーバル | evaluate。文字列を式として評価。 |
exec() | エグゼック | execute。 |
iter() / next() | イター / ネクスト | iterator。 |
enumerate() | イニューマレート/エニュメレート | 「列挙する」。インデックスと要素を同時に取り出す。綴りミスも多発する要注意単語。 |
isinstance() | イズインスタンス | is + instance。 |
getattr() / setattr() / hasattr() | ゲットアター / セットアター / ハズアター | attr = attribute(属性)。 |
bin() / oct() / hex() | ビン / オクト / ヘックス | 2進・8進・16進表記へ変換。 |
dict | ディクト | dictionary。 |
tuple | タプル/トゥープル | 日本では「タプル」が優勢。 |
str / int / float | エスティーアール/ストラ / イント / フロート | それぞれ string / integer / floating point。str は「ストリング」と読み下す人も多い。 |
elif | エルイフ/エリフ | else if。 |
lambda | ラムダ | 無名関数。 |
yield | イールド | 「産出する」。ジェネレータで値を返す。 |
assert | アサート | 「表明する」。条件が偽なら例外。 |
nonlocal | ノンローカル | 外側の関数のローカル変数を書き換える宣言。 |
None | ノン/ナン | 「無い」ことを表す唯一のオブジェクト。 |
NaN | ナン | Not a Number。None とは別物なので混同注意。 |
2. 記号・特殊な書き方
Pythonは記号にも固有の呼び名があります。会話で使えると一気に楽になります。
| コード | 読み方 | ひとこと解説 |
|---|---|---|
__init__ | ダンダーイニット | dunder = double underscore(アンダースコア2つ)。__name__ なら「ダンダーネーム」。 |
__name__ == "__main__" | ダンダーネーム イコール ダンダーメイン | Python入門の最初の関門。 |
_ | アンダースコア/アンスコ | 使わない変数の受け皿としても使う。 |
*args / **kwargs | アスタリスク アーグス / ダブルアスタリスク クワーグス | args = arguments、kwargs = keyword arguments。 |
:= | セイウチ演算子(ウォルラス演算子) | walrus operator。:= がセイウチの目と牙に見えることから。Python 3.8で追加。 |
-> | アロー | 関数の戻り値の型ヒント。 |
@ | デコレータ/アットマーク | @staticmethod は「アットマーク スタティックメソッド」。 |
f"..." | エフストリング | f-string(フォーマット済み文字列リテラル)。 |
// | フロアディビジョン/切り捨て除算 | 整数除算。 |
... | エリプシス | Ellipsis という正式なオブジェクト。NumPyのスライスでも使う。 |
#!/usr/bin/env python | シェバン/ハッシュバン | shebang。スクリプト先頭のインタプリタ指定行。 |
[::-1] | スライス、コロンコロン | 逆順にする定番イディオム。 |
3. 標準ライブラリのモジュール名
省略形の宝庫です。ここが読めるようになると、公式ドキュメントの読解速度が変わります。
| コード | 読み方 | 元の綴り・ひとこと解説 |
|---|---|---|
re | アールイー/レ | regular expression(正規表現)。 |
os | オーエス | operating system。 |
sys | シス | system。 |
shutil | シューティル/エスエイチユーティル | shell utilities。ファイルのコピーや削除。難読の代表格。 |
glob | グロブ | ワイルドカードによるファイル名展開(globbing)。 |
itertools | イターツールズ | iterator + tools。 |
functools | ファンクツールズ | function + tools。lru_cache などが入っている。 |
deque | デック/デキュー | double-ended queue(両端キュー)。英語では「デック」。 |
heapq | ヒープキュー | heap queue。優先度付きキュー。 |
bisect | バイセクト | 「二等分する」。ソート済みリストへの二分探索挿入。 |
defaultdict | デフォルトディクト | 存在しないキーに初期値を自動生成する辞書。 |
namedtuple | ネームドタプル | 名前でアクセスできるタプル。 |
argparse | アーグパース | argument parser。コマンドライン引数の解析。 |
pathlib | パスリブ | path + library。 |
pickle | ピクル | 「漬物にする」。オブジェクトをバイト列に保存すること(シリアライズ)。 |
venv | ベンブ/ブイエンブ | virtual environment(仮想環境)。 |
enum | イーナム/エナム | enumeration(列挙型)。 |
abc | エービーシー | Abstract Base Classes(抽象基底クラス)。 |
asyncio | アシンクアイオー/エイシンクアイオー | asynchronous I/O(非同期入出力)。 |
uuid | ユーユーアイディー | Universally Unique IDentifier。 |
dis | ディス | disassembler。バイトコードを覗ける。 |
pdb | ピーディービー | Python Debugger。 |
gc | ジーシー | garbage collector。 |
日時まわりの難読トップ2
| コード | 読み方 | 元の綴り |
|---|---|---|
strftime() | エスティーアールエフタイム/ストラフタイム | string format time。日時 → 文字列。 |
strptime() | エスティーアールピータイム/ストラップタイム | string parse time。文字列 → 日時。 |
fが format(出力)、pが parse(入力)。ここさえ押さえれば、もう取り違えません。
OS・ファイル操作の難読
| コード | 読み方 | 元の綴り |
|---|---|---|
os.getcwd() | ゲットシーダブリューディー | get current working directory。 |
os.environ | エンバイロン | environment(環境変数)。 |
os.path.splitext() | スプリットイーエックスティー/スプリットエクステンション | split extension。拡張子を分離。 |
os.path.abspath() | アブスパス | absolute path。 |
sys.argv | アーグブイ | argument vector。コマンドライン引数のリスト。 |
stdin / stdout / stderr | スタンダードイン/アウト/エラー | standard input / output / error。 |
errno | エラーノー | error number。 |
mkdir | メイクディレクトリ/ムクディア | make directory。 |
4. よく見かける省略変数名
自分では書かなくても、他人のコードやサンプルには必ず出てきます。
| 変数名 | 読み方 | 元の綴り |
|---|---|---|
idx | インデックス/アイディーエックス | index |
impl | インプル | implementation(実装) |
misc | ミスク | miscellaneous(その他) |
cfg | コンフィグ | config / configuration |
attr | アトリビュート/アター | attribute |
func | ファンク | function |
param | パラム/パラメータ | parameter |
src / dst | ソース / デスティネーション/ディーエスティー | source / destination |
tmp | テンプ | temporary |
buf | バフ | buffer |
regex | リージェックス/レゲックス | regular expression |
elem | エレム/エレメント | element |
prev / curr | プレブ / カー | previous / current |
eps | イプシロン/イーピーエス | epsilon。ゼロ除算を避けるための微小値。 |
clf | シーエルエフ | classifier(分類器)。scikit-learnの慣習。 |
df | ディーエフ | DataFrame。pandasの慣習。 |
5. NumPy
| コード | 読み方 | 元の綴り・ひとこと解説 |
|---|---|---|
numpy | ナンパイ/ナムパイ | Numerical Python。 |
ndarray | エヌディーアレイ | n-dimensional array。NumPyの中核となる多次元配列。 |
dtype | ディータイプ | data type。 |
np.arange() | エーレンジ/アレンジ | array range。「アレンジ(arrange)」と綴りが違うので注意。 |
np.linspace() | リンスペース | linearly spaced。区間を等分割。 |
np.linalg | リンアルグ/リニアアルジェブラ | linear algebra(線形代数)。難読ランキング上位の常連。 |
np.linalg.inv() | インブ | inverse(逆行列)。 |
np.linalg.det() | デット | determinant(行列式)。 |
np.linalg.eig() | アイグ/エーアイジー | eigenvalue(固有値)。 |
np.linalg.svd() | エスブイディー | singular value decomposition(特異値分解)。 |
np.linalg.norm(x, ord=2) | オード | ここでも ord が登場。ノルムの「次数(order)」の意味。 |
np.argmax() / np.argmin() | アーグマックス / アーグミン | argument of the maximum。最大値そのものではなく「最大値の位置」を返す。 |
np.argsort() | アーグソート | ソート後の並び順に対応するインデックスを返す。 |
np.einsum() | アインサム | Einstein summation(アインシュタインの縮約記法)。 |
np.ravel() | ラベル/ラヴェル | 「ほどく」。多次元配列を1次元に平坦化。 |
np.squeeze() | スクイーズ | サイズ1の次元を絞り出して削除。 |
np.eye() | アイ | 単位行列。記号 I の音に引っかけた命名。 |
np.matmul() | マットマル | matrix multiplication(行列積)。 |
np.cumsum() | キュムサム | cumulative sum(累積和)。 |
np.randn() | ランドエヌ | random normal(標準正規分布の乱数)。rand は一様分布なので別物。 |
np.meshgrid() | メッシュグリッド | 格子点の座標配列を作る。等高線プロットで多用。 |
axis=0 | アクシス | 軸。0が行方向、1が列方向。 |
np.nan | ナン | Not a Number。 |
np.inf | インフ | infinity(無限大)。 |
6. pandas
| コード | 読み方 | 元の綴り・ひとこと解説 |
|---|---|---|
pandas | パンダス | panel data が由来。動物のパンダではありません。 |
df.loc[] | ロック | location。ラベル(名前)で指定。 |
df.iloc[] | アイロック | integer location。位置(整数)で指定。 |
df.astype() | アズタイプ | as + type。型変換。 |
dropna() / fillna() | ドロップエヌエー / フィルエヌエー | drop / fill + NA(Not Available、欠損値)。 |
df.agg() | アグ | aggregate(集約)。 |
groupby() | グループバイ | SQLのGROUP BYと同じ発想。 |
pd.concat() | コンカット | concatenate(連結)。 |
df.melt() | メルト | 横持ちデータを縦持ちに「溶かす」。 |
nunique() | エヌユニーク | number of unique(ユニーク値の個数)。 |
pd.get_dummies() | ゲットダミーズ | ダミー変数化(One-Hotエンコーディング)。 |
applymap() | アプライマップ | 要素ごとに関数を適用。 |
SettingWithCopyWarning | セッティングウィズコピーワーニング | pandas初心者が必ず一度は遭遇する警告。 |
7. scikit-learn
| コード | 読み方 | 元の綴り・ひとこと解説 |
|---|---|---|
scikit-learn | サイキットラーン | SciPy Kit に由来。元々は scikits.learn という名前でした。 |
sklearn | エスケーラーン/サイキットラーン | import するときの名前。パッケージ名と違うので要注意。 |
fit() / transform() / predict() | フィット / トランスフォーム / プレディクト | scikit-learnの統一API。この3つを覚えれば大半のモデルが使える。 |
train_test_split() | トレインテストスプリット | データを学習用と検証用に分割。 |
StandardScaler | スタンダードスケーラー | 標準化(平均0・分散1)。 |
StratifiedKFold | ストラティファイド ケーフォールド | stratified = 「層化した」。クラス比率を保ったまま分割する交差検証。 |
GridSearchCV | グリッドサーチ シーブイ | CV = cross-validation(交差検証)。 |
DBSCAN | ディービースキャン | Density-Based Spatial Clustering of Applications with Noise。密度ベースのクラスタリング。 |
silhouette_score | シルエットスコア | クラスタリングの良さを測る指標。綴りが難しい。 |
KNeighborsClassifier | ケーネイバーズ クラシファイア | k近傍法。 |
coef_ / intercept_ | コエフ / インターセプト | coefficient(係数)/ 切片。末尾のアンダースコアは「学習後に確定する属性」の印。 |
verbose=1 | バーボス/ヴァーボース | 「饒舌な」。学習の進捗をどれだけ出力するか。 |
n_jobs=-1 | エヌジョブズ | 並列実行に使うCPUコア数。-1で全コア。 |
random_state | ランダムステート | 乱数シード。再現性の確保に必須。 |
8. その他のライブラリ
| ライブラリ | 読み方 | 由来・ひとこと解説 |
|---|---|---|
SciPy | サイパイ | Scientific Python。 |
matplotlib | マットプロットリブ | MATLAB風の描画ライブラリ。 |
seaborn | シーボーン | 略記の sns は、海外ドラマの登場人物 Samuel Norman Seaborn が由来と言われています。 |
Bokeh | ボケ | 写真用語の「ボケ味」がそのまま名前に。 |
Plotly | プロットリー | インタラクティブな可視化。 |
Pillow / PIL | ピロー / ピル | Python Imaging Library。Pillowはその後継。 |
cv2 | シーブイツー | OpenCVのPythonバインディング。 |
Django | ジャンゴ | ジャズギタリストのDjango Reinhardtが由来。Dは発音しません。 |
Flask | フラスク | 軽量Webフレームワーク。 |
Jinja2 | ジンジャ | Flaskのテンプレートエンジン。日本語の「神社(temple)」が名前の由来。 |
Werkzeug | ヴェルクツォイク | ドイツ語で「道具」。Flaskの内部で動くWSGIライブラリ。 |
Pydantic | パイダンティック | pedantic(融通の利かない)+ py。型を厳格にチェックする。 |
SQLAlchemy | エスキューエル アルケミー | alchemy = 錬金術。 |
Gunicorn | ジーユニコーン/ガニコーン | Green Unicorn。 |
Celery | セロリ | 非同期タスクキュー。 |
Cython | サイソン | C + Python。CPython(シーパイソン)とは別物なので混同注意。 |
Numba | ナンバ | JITコンパイラ。 |
requests | リクエスツ | HTTPライブラリの定番。 |
9. 開発環境・ツール
| 用語 | 読み方 | 元の綴り・ひとこと解説 |
|---|---|---|
pip | ピップ | Pip Installs Packages(再帰的な略語)。 |
PyPI | パイピーアイ | Python Package Index。パッケージの公式倉庫。 |
PyPy | パイパイ | 高速なPython実装。PyPI とは全くの別物。混同注意。 |
conda | コンダ | Anaconda(アナコンダ)のパッケージ管理ツール。 |
GIL | ギル | Global Interpreter Lock。Pythonが真の並列実行をしにくい理由。 |
REPL | レプル | Read-Eval-Print Loop。対話モードのこと。 |
PEP 8 | ペップ エイト | Python Enhancement Proposal。8番がコーディング規約。 |
WSGI | ウィズギー | Web Server Gateway Interface。仕様書では「ウィズギー」と読むと明記されています。 |
ASGI | アズギー | 非同期版のWSGI。 |
flake8 | フレークエイト | 静的解析ツール。 |
mypy | マイパイ | 型チェッカー。 |
ruff | ラフ | Rust製の高速リンター。近年の定番。 |
isort | アイソート | importの並び替え。 |
EAFP | イーエーエフピー | Easier to Ask Forgiveness than Permission。「まずやってみて例外で対処する」Pythonらしい流儀。 |
MRO | エムアールオー | Method Resolution Order。多重継承時のメソッド探索順序。 |
YAML | ヤムル/ヤメル | YAML Ain't Markup Language。 |
TOML | トムル | Tom's Obvious Minimal Language。pyproject.toml で使う。 |
.whl | ホイール | wheel。ビルド済みパッケージの配布形式。 |
__pycache__ | パイキャッシュ | バイトコードのキャッシュ置き場。 |
10. 「pip install名」と「import名」が違うやつ
読み方以前に、そもそも名前が変わる。初学者が最も混乱するポイントです。
| pip install する名前 | import する名前 |
|---|---|
scikit-learn | sklearn |
scikit-image | skimage |
opencv-python | cv2 |
Pillow | PIL |
beautifulsoup4 | bs4 |
PyYAML | yaml |
python-dateutil | dateutil |
attrs | attr |
Faker | faker |
Django | django |
よくある誤読ワースト5
ord()→ ◯オード / ×オーアールディーlinalg→ ◯リンアルグ(linear algebra)/ ×リナルグ・ラインアルグDjango→ ◯ジャンゴ / ×ディージャンゴdeque→ ◯デック(double-ended queue)/ ×デクエPyPIとPyPy→ ◯パイピーアイ と パイパイ / この2つは別物
おわりに
Pythonの識別子が読みにくいのは、限られた文字数に英単語を詰め込んでいるからです。裏を返せば、読み方が分かった瞬間に「なぜこの名前なのか」まで一緒に理解できる、という設計でもあります。
strftime は string format time。arange は array range。argmax は argument of the maximum。 一度そう覚えてしまえば、二度と忘れませんし、タイプミスも減ります。
新人研修などで教える立場の方は、コードを読み上げるときに元の英単語を一言添えるだけで、受講者の定着が目に見えて変わります。「オーアールディー」と読んでいた人が「オード、ordinalね」と言えるようになる。その小さな差が、コードへの心理的な距離を確実に縮めてくれます。
投稿者プロフィール

- 代表取締役
-
セイ・コンサルティング・グループ株式会社代表取締役。
岐阜県出身。
海外放浪の末、2000年創業、2004年会社設立。
IT企業向け人材育成研修歴業界歴20年以上。
すべての無駄を省いた費用対効果の高い「筋肉質」な研修を提供します!
この記事に間違い等ありましたらぜひお知らせください。
学生時代は趣味と実益を兼ねてリゾートバイトにいそしむ。長野県白馬村に始まり、志賀高原でのスキーインストラクター、沖縄石垣島、北海道トマム。高じてオーストラリアのゴールドコーストでツアーガイドなど。現在は野菜作りにはまっている。

