はじめに/基本
コーディングスタイル/ドキュメンテーション
- コーディングスタイル
- ドキュメンテーション
開発ツール/デバッグ/ユニットテスト
- Python プロジェクト用の爆速パッケージマネージャ uv を導入する
- 実行環境/仮想環境
- パッケージ
- 対話型シェル
- テスト
- パフォーマンス
python コマンド/実行環境
- python コマンドでワンライナーを実行する
- Python スクリプトの中で Python のバージョンを確認する (
sys.version
) - 拡張子に関連付けられたアプリケーションでファイルを開く (
os.system
) - Python の最大再帰数を調べる/変更する
- Python から外部プログラムを起動する (
subprocess.run
) - 環境変数
構文
- モジュール / パッケージ
- 型 / 変数
- 制御構文
- メソッド / 関数
- クラス
型
数値
- 2進数、8進数、16進数の数値リテラル
- 数値と文字(文字列)を変換する (chr, ord, int, hex, oct, bin)
- 整数の割り算の結果を整数 or 少数点数で取得する
- 小数点以下を四捨五入する/切り捨てる/切り上げる
- 独自オブジェクトの配列から最小値、最大値を求める (min_by/max_by)
- リスト要素の合計値を求める (sum)
- ランダムな数値(乱数)を生成する (randrange, randint, random, uniform)
- 階乗を求める (math.factorial)
- 順列の数 (nPr) を求める
- 組み合わせの数 (nCr) を求める
文字列
- Python の文字列リテラルいろいろ
- 文字列の中で変数を展開する(書式文字列によるフォーマット) (
str#format
,%
演算子) - 同じ文字列を繰り返した文字列を作成する
- 文字列の長さを調べる (
len
) - 文字列がある文字列で始まっている/終わっているかを調べる
- 文字列が正規表現に完全一致するか調べる (
re.fullmatch
) - 文字列内の部分文字列を検索する/抽出する(正規表現)
- 文字列を置換する (
str.replace
,re.sub
,re.subn
) - 分割
- リスト内の要素を結合して文字列にする (
join
) - 文字列を逆順にする(反転させる)
- ランダムな文字列を生成する (
random.choice
) - Python で UUID を生成する (
uuid.uuid4
) - JSON
シーケンス (Lists and Tuples)
- リストとタプルの違い
- リストとタプルの生成
- リストに要素を追加する/リストを結合する (append, extend, +)
- リスト/タプルをループで処理する
- リスト/タプルのサイズを取得する (len)
- リスト/タプル内の要素をランダムで取得する (random.choice, random.choices, random.sample)
- リストを昇順ソート/降順ソートする (
list.sort
/sorted
) - リストをシャッフルする (random.shuffle)
- リストから特定の値を持つ要素を削除する (list.remove)
- リストをフィルタして条件に一致する要素を抽出する (filter)
- リスト内の特定の値を持つ要素の数を数える (list.count)
- リスト内の条件に一致する要素の数を数える
- リスト内の要素をまとめて変更する (map)
- 二次元配列を作成する
- 二次元配列をソートする
- 2 つのリストに重複する要素を抽出する(
set
と&
)
辞書・ディクショナリ (Dictionary)
- dictionary(辞書)チートシート
- dictionary(辞書)の基本
- dictionary の要素をソートして出力する (
sorted
) - キーのリストと値のリストを組み合わせて dictionary を生成する (
zip
) - dictionary からキーや値のリストを作成する (
keys
,values
,items
) - 2 つの dictionary をマージする (
update
) - dictionary にキーが存在しない場合のみ新しい値を格納する (
setdefault
) - dictionary の内部的な要素順序を変更する (
dict
,OrderedDictionary
)
セット (Set)
入出力 (I/O)
コマンドライン引数/標準入力/標準エラー出力
- コマンドライン引数
- キーボードからのユーザ入力を取得する (
input
,getpass
)
パス
- 実行中のスクリプトのファイル名やパスを取得する
- パスからファイル名だけを取り出す (basename)
- パスを結合する (join)
- パスを指定したディレクトリからの相対パスに変換する (
os.path.relpath
)
ファイル/ディレクトリ
- 列挙
- コピー/移動/リネーム
- 作成/削除
- ファイル/ディレクトリの存在を確認する (
os.path.exists
,os.path.isfile
,os.path.isdir
) - Python スクリプトが格納されているディレクトリのパスを取得する
- テンポラリファイル/ディレクトリを作成する (
tempfile
)
ファイルの読み書き
- 基本的なファイル読み書き
- CSV/TSV
- JSON ファイル
- YAML ファイル
- HTML ファイル
- XML ファイル
- Excel ファイル
- ZIP/JAR ファイル
- その他のファイル、応用サンプル
Web / HTTP
URL
- URL 文字列を各パートに分割する (
urllib.parse.urlparse
) - 文字列を URL エンコード/デコードする (
urllib.parse.quote
,unquote
,urlencode
)
HTTP リクエスト
- Python で HTTP を扱う方法いろいろ
- urllib.request
- urllib による HTTP 通信 (1) GET/POST リクエスト (
urllib.request.urlopen
) - urllib による HTTP 通信 (2) プロキシ経由でアクセスする
- ulrlib による HTTP 通信 (3) ファイルをダウンロードする (
urllib.request.urlretrieve
) - urllib による HTTP 通信 (4) Basic 認証 (
urllib.request.HTTPBasicAuthHandler
) - urllib による HTTP 通信 (5) ヘッダを付けてリクエストする
- urllib による HTTP 通信 (6) レスポンスヘッダを取得する
- urllib による HTTP 通信 (1) GET/POST リクエスト (
- requests パッケージのチートシート
- サンプルコード
HTTP サーバー
未分類
日時(日付/時刻)
- Python で日時(日付/時刻)の情報を扱う (datetime, date, time, timedelta)
- 現在時刻から YYYY-MM-DD のような日付文字列を生成する (strftime)
画像処理
scikit-image
OpenCV
keras
データ分析 (NumPy / pandas / Matplotlib / scikit-learn)
共通
NumPy
pandas
Matplotlib
scikit-learn
wxPython
基本ウィンドウとレイアウト
- wxPython によるウィンドウ表示の基本
- wxPython - Dialog(ダイアログ)
- wxPython - Frame(フレーム)
- wxPython - Layout(レイアウト)
- wxPython - SplitterWindow(スプリッターウィンドウ)
各種コンポーネント
- wxPython - Button(ボタン)
- wxPython - CheckBox(チェックボックス)
- wxPython - CheckListBox(チェック付きリストボックス)
- wxPython - Choice(プルダウンボックス)
- wxPython - ComboBox(コンボボックス)
- wxPython - Gauge(プログレスバー)
- wxPython - Grid(グリッド)
- wxPython - HtmlWindow(HTML ウィンドウ)
- wxPython - ListBox(リストボックス)
- wxPython - Menu(メニュー)
- wxPython - RadioButton(ラジオボタン)
- wxPython - Slider(スライダー)
- wxPython - SpinCtrl(スピンコントロール)
- wxPython - StaticText(変更不可のラベル)
- wxPytnon - StatusBar(ステータスバー)
- wxPython - TextCtrl(テキスト入力用)
その他の wxPython メモ
- wxPython のイベントハンドラを理解する
- wxPython アプリケーションのエラー出力方法を理解する
- wxPython によるグラフィックス処理を理解する
- wxPython でマウスカーソル関連のイベントを処理する
- wxPython のコンポーネントをドラッグで動かせるようにする
- wxPython 関連コラム