ネコと和解せよ

2020-01-01から1年間の記事一覧

pythonの符号なしintとバイナリをいい感じに相互変換する

pythonでint128やらint256を扱ったときに、JsonやDBへそのまま書き出せない。 blobに変換して書きだすとよろしいようなので、関数を作った。 import math def toBlobUint(n): """uintをバイナリに変換 """ if n==0: return int.to_bytes(n,1,byteorder="big"…

javascriptで多次元配列を作る

鶏が困っていたので作りました。 javascriptで多次元配列を作ります。 関数 function ndarray(args){ var r=new Array(args[0]) if(args.length==1){ return r } for(var i=0;i

Pythonでテクニカル指標を計算する

オレオレ指標を作り続けて数年、何をやっても損をするので、初心に帰ってPythonでテクニカル指標のRSI、RCI、MACD、SMA(単純移動平均)、WMA(加重移動平均)、EMA(指数平滑移動平均)を計算するコードを書いた。二度と書きたくないのでここに記録する。 c…

いろいろ水に流すツールを作った

ドメインのセールでなんとなく検索したunko.shopが空いていたので、200円ちょっとで購入した。今年のウェブページの開発の演習もかねて、インタラクティブに(とはいってもクリックだけだけど)unkoをつついて流せるウェブサービスを作りました。unko.shop画…

スマホでも動くブラウザ用のサウンドイフェクト連射クラス

audioタグを使ったサウンド再生は、特にスマートフォンブラウザで短時間に連続して起動するとうまく動きません。 iOSのsafariでは顕著で、同一ソースを複数読み込んでマルチチャンネル化しても他の処理に遅延などの影響が出たりします。以下のクラスでは、音…

Chrome(PC/Android)用の簡易音声メモアプリ

先日使い方を覚えたSpeechAPIを使って簡易音声メモアプリ”ひとりごとメモ帳”を作りました。 AndroidとPCのChromeブラウザで音声メモができます。 使い方 準備 Chromeで音声入力ができるように、OSとブラウザの設定を整えておいてください。Windows Win10のPC…

漢字を忘れたときに音声検索するブラウザアプリを作った

ど忘れ漢字を書くときに、音声で検索できると便利そうなので作りました。 ブラウザから音声で漢字を検索するためのツールです。PCか新しめのAndroidスマホで使用できます。残念ながらiPhoneでは動きません。 使い方 基本的な使い方 ブラウザで以下のURL開い…

Promiseで複数のコールバックイベントを予約する

SpeechAPIの非同期イベントを並べなおすときに、複数のイベントを順に呼ぶ必要があったので作った。 コンストラクタで空のPromiseを呼んでその結果をnextに保存しておく。 作った後で気が付いたけど、これクラスにする必要ないね。 class PromiseStack { con…

javascriptで都合よくhtmlフラグメントを生成する関数

JavascriptでちょっとしたHTMLをjavascriptオブジェクトから作る関数を作った。類似品を検索したけど見つけられなかった。もし似たようなのがあったら教えてください。例えばこんなjsオブジェクトから、 var src=["div",{class:1,text:"",},[ ["div",[ "AAAA…

celeryのシグナル調査ログ

celeryのシグナルのログ from celery.signals import * import os @eventlet_pool_started.connect def eventlet_pool_started(sender=None, headers=None, body=None, **kwargs): print("accept eventlet_pool_started %d"%(os.getpid(),)) @eventlet_pool_…

Pythonでいいかんじに 小数部の桁数を制限する

pythonで小数部の桁数を制限する場合、decimalを使うのが一般的だそうだ。 decimalは有効桁数を制御できるけど、JavaのBigDecimal#setScaleのように小数点以下の桁数を制限する機能がなかった。そんなわけでいい感じに 小数部を成型してくれる関数を作った。…

メモ

ubuntuでmatplotlibでpillow関係のエラーが出た時の再インストール手順 apt-get install libjpeg-div pypy3 -m pip uninstall matplotlib pypy3 -m pip uninstall pillow pypy3 -m pip install matplotlib pypy3 -m pip install pillow

JSON形式でPickleがしたい!

Pythonオブジェクトのシリアライズにはpickleモジュールがあるが、こいつは独自形式のバイナリを出力する。どこかの超人のようにバイナリをそのまま読めないので、JSON形式でpickleできるようなモジュールを作った。pickle utility to json format . · GitHu…

WSL +VScode でpypy3するメモ

WSLとpypy3とVSCodeはあらかじめ入れておく。VSCodeの次の設定をいじる。

ThinkPad X395を買ったよ!

LenovoさんのセールでThinkpadX395を買いました。 2013年の9月にT440pを買って以来なので、なんと7年ぶり。 レノボWeb広告限定ストア 広告限定eクーポンはこちら スペック メモリは増設できないので最大。ストレージは修理に出すとき困るから最低限にして後…

いまさらJavaのTimerの挙動を調べる。

JavaのTimerをキャンセルしたときに、実行中のタスクがどうなるのか調べていなかったので調べた。 import java.util.Timer; import java.util.TimerTask; public class TimerTest { public static synchronized void print(String s){ System.out.println(s)…

sqlite3でROW_NUMBER()が使えるらしい。

SQLiteでもVersion3.25.0からROW_NUMBERが使えるようになっていた。How to use ROW_NUMBER in sqlite - Stack Overflow SQLite ROW_NUMBER() Window Function By Practical Examplesグループ分けされたスコア情報から、グループごとにN個のデータをサンプリ…