2020-02-01から1ヶ月間の記事一覧
Pythonでの優先度付きキューはheapqを使うとできます。 import heapq 最小ヒープ はじめに、リストをキューに優先度付きキューに変換します。 que = [3, 1, 5, 2] heapq.heapify(que) 先頭に最小値がきます。(先頭以外はソートされているわけではありません…
Pythonパッケージを作成する際、__init__.pyにバージョンを書いておき、setup.pyでは__init__.pyからimportすることが一般的かと思います。しかし、pyproject.toml を利用するとPythonファイルではないので setup.py のようにバージョンをimportすることはで…
argparser の引数として文字列を入力すると自動的にエスケープされますが、改行などプログラム中で使いたい場合があるかと思います。そこで、エスケープされた文字列を元に戻す方法を紹介します。 はじめに、自動的にエスケープされることを確認します。 # m…
PythonのCLIフレームワークの1つにclickがあります。 デコレータを使って簡単にCLIが作成できますが、1ファイルにすべてのコマンドのコードを書いていくと長くなります。 そこで、CommandCollectionを使って複数のコマンドをマージすることで、コマンド別に…