python のクラスを JSON 化

コレ を作るにあたって、データの serialize/deserialize の方法を調べた結果、 marshmallow_dataclass に落ち着きました。 いくつか調べた中で、パッと見、直感的に出来そうだった、というだけの理由ですが。。 実際、面倒な処理はほとんど無く、 serialize/deserialize が可能になりました。 使い型 marshmallow_dataclass は、 クラスを宣言する際に @dataclass デコレータを付けて宣言し、 メンバの型を宣言するのが基本です。 こんな感じ。 @dataclass class LogItem: # ゲームタイトル title:str # 日付 date:int # テキスト text:str # テキスト長 len:int メンバの宣言が python っぽくないと思

ゲームのメッセージ欄に表示されたメッセージの読み上げシステム

4 月頃から、英語のレベルを上げるため参考書を買って勉強をしている。 その参考書を使った最低限の基礎英語の復習は終ったので、次のステップに進むことにした。 基礎が終った後の学習方法には何が良いのか色々と調べてみたが、 色々な意見があるが最終的には「持続できるものが良い」というのが結論のようだ。 まぁ、「持続すること」が英語学習で最も難しいことは、 私自身が何度も挫折した経験があるので認識している。 そもそも、先

Raspberry pi zero w で Bluetooth 色々(ファイル転送:obex、 IP over BT:PAN )

だいぶ前に買って放置していた Raspberry pi zero w をセットアップしました。 Raspberry pi zero w と言えば「小型軽量」が売りなんで、 今回はポータブルな IOT デバイスとして使う事を目的として、 Bluetooth の機能(ファイル転送、 IP over Bluetooth) のセットアップをしました。 イマドキ Bluetooth なんて、 最新のイメージでセットアップすればすぐに使えるだろうと思って余裕でした。 しかし、実際には目的の機能が動作するまでに、かなりの時間が掛ってしまいました。 少なくとも、パッケー

VMWare ディスクイメージが圧縮されないときの対応方法

VMWare のディスクイメージのサイズは、Gest OS 上のディスクサイズと異なる。 基本的には、Gest OS 上で実際に使用されているサイズに圧縮された形でホスト OS 上に保持される。 しかし、 Gest OS 上でファイル作成、削除を繰り返していると、 Gest OS 上での使用サイズよりも、 ホスト OS 上でのディスクイメージサイズがかなり大きくなっていることがある。 このような状態になった時に、ホスト OS 上のディスクイメージサイズを、 Gest OS 上での使用サイ

関数ポインタのオーバーヘッド

現在 LuneScript の C 言語へのトランスコンパイル処理を対応中だが、 トランスコンパイルする際に関数ポインタによる関数コールのオーバーヘッドが どの程度なのか気になったので調べてみた。 結果 初めに結果から書くと、 関数ポインタによる関数コールのオーバーヘッドは、 通常の関数コールに比べて約 1.267 倍となることが判った。 この数値は、あくまで今回の実験結果であって、 関数ポインタかどうかの違いだけはなく、他の要因も入ってしまっている