Repolode
mahmoud

mahmoud/boltons

標準ライブラリを拡張する230以上のユーティリティを備えた、依存関係のない純粋なPythonライブラリ。

スター
6,940
フォーク
484
未解決の Issue
174
最終コミット
先月

これは何?

Boltonsは、標準ライブラリに不足している機能を補う、BSDライセンスの純粋なPythonユーティリティを230種類以上集めたライブラリです。OrderedMultiDictや2種類の優先度キューなどのデータ構造、chunkedやwindowedなどのイテレーション用ヘルパー、remapによる再帰的な構造の走査とマージ、ジッターを加えた指数バックオフなどを提供します。

そのほか、アトミックなファイル保存、スタックトレースを表現する高機能なTracebackInfo型、LRUキャッシュなどのキャッシュ用ユーティリティも備えています。依存するのは標準ライブラリのみで、Python 3.7〜3.14とPyPy3でテストされています。

BoltonsはPyPIまたはconda-forgeからインストールできます。また、各モジュールは独立しているため、必要なものだけをプロジェクトに直接コピーすることもできます。

主な機能

  • 01サードパーティ製の依存関係がない純粋なPythonライブラリです。
  • 02OrderedMultiDictや2種類の優先度キューなどのデータ構造を提供します。
  • 03chunked、windowed、再帰的なremapなどのイテレーション用ヘルパーを備えています。
  • 04ジッターを加えた指数バックオフを利用できます。
  • 05アトミックなファイル保存と、詳細な情報を扱えるTracebackInfo型を備えています。
  • 06各モジュールを個別にプロジェクトへ取り込めます。

ユースケース

  • 新たな依存関係を追加せずに、Pythonのコードベースへチャンク分割、ウィンドウ処理、入れ子構造の走査を追加する。
  • アトミックな保存によって、クラッシュ時にも安全なファイル更新を行う。
  • ジッターを加えた指数バックオフでリトライ処理を実装する。
  • ログ記録やエラー報告向けにスタックトレースを取得・整形する。

クイックスタート

  1. 1

    PyPIからboltonsをインストールする

    pip install boltons
  2. 2

    ユーティリティをインポートして使用する

    from boltons.cacheutils import LRU

使う前に知っておきたいこと

  • メタデータではライセンスがNOASSERTIONと記載されているため、使用前にライセンスを確認してください。
  • 用途が広がってきた場合、個々のモジュールは専門的なサードパーティ製ライブラリの代わりにはなりません。

収録されている特集

トピック

よくある質問

boltons とは?
標準ライブラリを拡張する230以上のユーティリティを備えた、依存関係のない純粋なPythonライブラリ。 Boltonsは、標準ライブラリに不足している機能を補う、BSDライセンスの純粋なPythonユーティリティを230種類以上集めたライブラリです。OrderedMultiDictや2種類の優先度キューなどのデータ構造、chunkedやwindowedなどのイテレーション用ヘルパー、remapによる再帰的な構造の走査とマージ、ジッターを加えた指数バックオフなどを提供します。
boltons は無料で使えますか?ライセンスは?
boltons は Other ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
boltons は今もメンテナンスされていますか?
半年以内に更新あり。boltons の最終コミットは 2026年9月23日 です。
boltons は何に使えますか?
新たな依存関係を追加せずに、Pythonのコードベースへチャンク分割、ウィンドウ処理、入れ子構造の走査を追加する。 アトミックな保存によって、クラッシュ時にも安全なファイル更新を行う。 ジッターを加えた指数バックオフでリトライ処理を実装する。 ログ記録やエラー報告向けにスタックトレースを取得・整形する。
boltons のインストール方法は?
PyPIからboltonsをインストールする: pip install boltons ユーティリティをインポートして使用する: from boltons.cacheutils import LRU
boltons はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/mahmoud/boltons

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト