Python
読みやすさを重視した汎用プログラミング言語で、データサイエンス、AI、Web 開発で広く使われる
プログラミング言語データ分析
Python とは
Python は、Guido van Rossum が 1991 年にリリースした汎用プログラミング言語で、読みやすさとシンプルさを重視した設計が特徴だ。データサイエンス、機械学習、Web 開発、自動化スクリプトで広く使われている。
特徴
Python は波括弧ではなくインデントでブロックを定義するインデントベースの構文を持ち、コードの見た目が統一される。動的型付けで変数に型宣言が不要だが、Python 3.5 以降は型ヒントを任意で付与できる。「バッテリー同梱」の思想で標準ライブラリが豊富な一方、GIL (Global Interpreter Lock) により真の並列処理が制限される点は注意が必要だ。
TypeScript / Go との比較
| 観点 | Python | TypeScript | Go |
|---|---|---|---|
| 型システム | 動的 (型ヒント任意) | 静的 | 静的 |
| 実行速度 | 遅い (インタプリタ) | 中程度 (V8 JIT) | 速い (ネイティブ) |
| 並行処理 | asyncio, multiprocessing | async/await | goroutine |
| パッケージ管理 | pip, uv, Poetry | npm | Go Modules |
| 用途 | データサイエンス、AI | Web アプリ | サーバー、CLI |
型ヒント (Python 3.12+)
def greet(name: str, age: int) -> str:
return f"Hello, {name}! You are {age} years old."
# ジェネリクス
type Point[T] = tuple[T, T]
# TypedDict
from typing import TypedDict
class User(TypedDict):
id: str
name: str
email: str
mypy で型チェックを実行する。TypeScript と異なり、ランタイムでは型ヒントは無視される。
データサイエンスのエコシステム
| ライブラリ | 用途 |
|---|---|
| NumPy | 数値計算、行列演算 |
| pandas | データ分析、DataFrame |
| scikit-learn | 機械学習 |
| PyTorch / TensorFlow | ディープラーニング |
| matplotlib / seaborn | データ可視化 |
| Jupyter Notebook | 対話的な分析環境 |
Python は Lambda で最も使われるランタイムの 1 つで、boto3 (AWS SDK) がプリインストールされている。
実践的な知識は関連書籍でも得られる。