2026-10

開発ツール

Pythonのisは小さい整数と大きい整数で違う?

同じ整数を書けば、isの結果も同じなのかPythonで同じ値の整数を別々の名前に代入したとき、その二つをisで比べた結果は、値が等しいことだけで決められるのでしょうか。公式ドキュメントの「Literals and object identi...
開発ツール

PythonのNFC・NFD・NFKC・NFKDはどう違う?

見た目が同じ文字列をどうそろえるかPythonでUnicode文字列を扱うとき、見た目が同じであることと、同じ表現であることは分けて考える必要があります。公式ドキュメントは、U+00C7(LATIN CAPITAL LETTER C WIT...
開発ツール

os.path.joinとpathlibで絶対パスはどう結合される?

基準のディレクトリが結合後に残らないのはなぜか基準となるディレクトリに別のパスを結合するとき、先に渡したディレクトリが必ず残ると考えていないだろうか。Pythonのos.path.join()と、pathlibのパスオブジェクトでは、その前...
開発ツール

PythonのCSV設定とUTFの設定は何が違う?

CSVの「既定」はどの設定を指すのかCSVを扱うとき、「既定の形式」という言葉だけでは、確認する対象が定まりません。フィールドを何で区切るか、どの文字を引用符にするか、行末をどう書くかという設定があります。一方、Unicodeの文字をどの形...
開発ツール

Gitの改行変換はtext属性とautocrlfどちらが効く?

何が困るのかWindows と macOS / Linux が混ざったチームで、触っていないはずのファイルが git status に大量に出てくる。差分を見ると全行が変わっているが、中身の文字は同じで、改行コードだけが CRLF と LF...
開発ツール

Python 3.15のopen()既定はUTF-8かロケールか

何が困るのか:encoding を書かずに open() したLinux や macOS で書いたスクリプトを Windows に持っていくと、open("data.json") のように encoding を省略した箇所で Unicode...
開発ツール

JSON に日本語を入れるとエスケープされるのはどれ? Python・Node.js・Go の既定を実測して比べた

同じデータを JSON にしたのに、片方のサービスでは {"name":"テスト"}、もう片方では {"name":"\u30c6\u30b9\u30c8"} になる。壊れているように見えますが、どちらも正しい JSON です。違うのは言語...
開発ツール

正規表現の \d は全角数字に当たるか|Python・JavaScript・Go の違い(2026年版)

\d は「数字1文字」だと思って書いたのに、全角の「1」が通ってしまった(あるいは通らなかった)——という食い違いは、言語によって \d の定義が違うことから来ています。結論を先に書くと、Python は既定で Unicode の数字に当た...