potisanのプログラミングメモ

趣味のプログラマーがプログラミング関係で気になったことや調べたことをいつでも忘れられるようにメモするブログです。はてなブログ無料版なので記事の上の方はたぶん広告です。記事中にも広告挿入されるみたいです。

まとめ未登録(管理用)

Python 3 Windowsアニメーションカーソル(.ani)の情報を取得する

Windowsアニメーションカーソル(.ani)の情報を取得するサンプルコードです。 #rifffilereader.py from __future__ import annotations from io import FileIO from os import SEEK_SET, SEEK_CUR from typing import Tuple from dataclasses import datacl…

Python 3 WindowsアニメーションカーソルのRIFFヘッダー構造を解析する

Windowsアニメーションカーソル(.ani)のRIFFヘッダー構造を解析するサンプルコードです。実行するとシグネチャとチャンクのデータサイズ、RIFFまたはLISTの場合はフォーム/リストタイプを出力します。 RIFFファイルやaniファイルの構造はソース中コメント…

数学 循環小数n.nnn...=10n/9の証明

循環小数(はの整数)の成立を証明します。

数学 循環小数0.nnn... = n/9の証明

循環小数()の成立を証明します。 の証明 とおくと、 の証明 とおくと、 の証明 (nはの整数)とおくと、

JavaScript idの直打ちによる要素参照が避けられるのはブラウザ仕様差のせい

id="element1"な要素を参照する方法はいくつかありますが、次の2通りが素直です。 // Windowオブジェクトへの名前アクセス element1 window["element1"] // document.getElementByIdメソッド document.getElementById("element1") 前者の方が短いのに後者の…

JavaScript ファイルのドロップを受け入れる

JavaScriptでファイルのドロップを受け入れるサンプルコードです。特殊オブジェクト(デスクトップの「PC」など)が含まれると何も取得されなくなることに注意してください。 ソースコード <html lang="ja"> <head> <meta charset="utf-8"> <title>Sample Document</title> <style> /* 外見を整えるためのスタイル定義です。 */</meta></head></html>…

JavaScript Arrayコード集(20220121)

配列の作成 要素のイテレーター作成 要素数の取得・設定 要素の参照 要素の選択・変換 要素の平坦化 要素を結合した文字列の作成 値による範囲上書き 条件式による要素の検索 値による要素の検索 要素の集約 要素の追加・抽出 要素の内部複写 要素の検索 要…

R&tidyverse filterとkeep/discardの使い分け

filterはデータフレームの行選択、keep/discardはベクトルの要素選択です。 require(dplyr) require(purrr) 1:5 %>% keep(~. %% 2 == 0) # [2, 4] 1:5 %>% discard(~. %% 2 == 0) # [1, 3, 5] tibble(A=1:5, B=11:15) %>% filter(A %% 2 == 0) ## A tibble: …

R purrrパッケージ(tidyverse)のmapメモ

変数の数 使う変数 リスト integerベクトル doubleベクトル characterベクトル logicalベクトル raw データフレーム 無視(元の値) 1個 . .x ..1 map map_int map_dbl map_chr map_lgl map_raw map_dfc, map_dfr walk 2個 . .x .y ..1 ..2 map2 map2_dbl ma…

R&tidyverse purrrパッケージに存在する関数の名前を取得する

purrrパッケージに存在する関数の名前を取得するコードです。ついでに非関数の名前も取得します。 # purrrパッケージに存在する関数の名前を取得する。 require(purrr) x <- lsf.str("package:purrr") print("purrrパッケージの関数:") print(as.character(…

C#9&Win API ドロップされたオブジェクトの表示名を取得する。

Windows APIを使用してごみ箱やPCのような特殊オブジェクトの表示名を取得するコードです。SHCreateShellItemArrayFromDataObject関数を使用しています。 #nullable enable using System; using System.Collections.Generic; using System.Runtime.InteropSe…

R&tidyverse purrr::map系関数とformulaの引数指定

purrr::map系関数はformula(~...)で式を与えられます。引数は.、.x、..1のどれでも指定できます。 require(purrr) 1:10 %>% map_dbl(~.+1) 1:10 %>% map_dbl(~.x+1) 1:10 %>% map_dbl(~..1+1) #> [1] 2 3 4 5 6 7 8 9 10 11 purrr::map2系関数やpurrr::pma…

R&tidyverse purrr::map_intが単純な足し算で失敗する理由

purrr::map_int関数が単純な足し算で失敗したとき、数値リテラルの型が原因かもしれません。 次のコードで(1)はエラー、(2)は成功します。違いは足す数が1か1Lかです。 require(purrr) 1:10 %>% map_int(~.x+1) #> Error: Can't coerce element 1 from a dou…

Power Query M テーブルの列名を先頭・末尾からの個数・条件一致で抜き出す

Power Query Mでテーブルの列名を先頭・末尾から個数あるいは条件一致で抽出するコードです。 let // 列名用のダミーテーブル テーブル1 = #table( {"列1", "列2", "列3", "列4", "列5", "A", "B", "C"}, {} ), // 列名はTable.ColumnNames関数でリストとし…

C++20&Win API&WIL IShellItemで既知フォルダのフォルダIDと名前を列挙する

IShellItemインターフェイスで既知フォルダ(Known Folder)のフォルダID(識別子)と名前を列挙するコードです。実行するとデバッグウィンドウに既知フォルダの数だけ「フォルダID: 名前」を出力します。 #include <format> #include <ranges> #include <vector> #define STRICT #de</vector></ranges></format>…

Python3 反復可能オブジェクトの正規表現と一致する部分を数える

Iterable(反復可能オブジェクト)の正規表現と一致する部分を数えるサンプルコードです。collections標準ライブラリのCounterクラスを使用しています。 import re from collections import Counter values = ("ab1111", "ab1112", "ac2111", "ac2112", "ad2…

Python3 反復可能オブジェクトから正規表現の一致部分が重複しない要素を1つずつ抜き出す

反復可能オブジェクト(Iterable)から正規表現の一致部分が重複しない要素を1つずつ抜き出すサンプルコードです。辞書型dictがキーと値のタプルで初期化でき、キーの重複する値を自動で上書きすることを利用しています。 import re #元から重複しないので…