2023-12-01から1ヶ月間の記事一覧

重複させないリストのマージ(結合)

題目:2つのリスト、alist と blist alist に存在しない blist と合わせて結果 alist にする。(マージする) 結果はソートする。 結果は alist にする。 alist = [ 'a', 'c', 'b' ] blist = [ 'c', 'd', 'e', 'a' ] 単純にすぐに書いてしまう原始的なコー…

pytest Thread宣言のクラスをモックにする

対象クラス abusiness.py from threading import Thread class AThread(Thread): def run(self)->None: print("AThread!") # TODO 処理 AThread を実行するテストされるクラス some.py class Some: def exec(self)->None: a = AThread() a.start() a.join() …

PostgreSQL 更新のRETURNING 結果に対して GROUP BY を実行する

SQL

UPDATE tablename SET column = value WHERE ~ RETURNING ~ に続けて GROUP BY を書いて利かせたいと思ってそのまま書いてはダメである。WITH 句を使う。例) WITH sampleupdate AS ( UPDATE samples SET delete_flg = true WHERE delete_flg = false RETURN…

Python での日本の祝日計算

昨日、Java の祝日計算プログラムが配布先を移動したりメンテナンスしたので、 ついでに Python 版もこれと一緒に公開することにしました。 Python での日本の祝日を抽出するものは、いろんなものが既に出回っているようですが、 計算で求めるようなものは少…

ネストしたリストの展開

入れ子状態のリストを1次元のリストに作りなおす。 例) list = [['A', 'B'], [], ['C', 'D'], ['E']] これを、['A', 'B', 'C', 'D', 'E'] にする list = [v for list_nest in list for v in list_nest] # ['A', 'B', 'C', 'D', 'E'] 辞書のリスト→1つの辞…

Java祝日計算の配布先を移動

中国に買収されてしまったOSDN(Open Source Development Network) もはや、ここで Java祝日計算プログラムを公開する価値はなく、、 (というか、まともに繋がらなくなっているし、ダウンロードもできない) ようやく GitHubで公開することにした。https:/…

SQLMapper interface を追加する

プログラムの管理の側面から、mybatis の SQLMapper をプログラムの動作中に追加することは 禁止されるべきであろう。 でも、SQLMap の XML を用意せずに Mappper インターフェースを追加することは可能なのです。SqlSession session という生成済みの SqlSe…