プログラミング– category –
Python・Bash・シェルスクリプトでハマりがちな挙動を解説します。文字化け、終了コードの基礎、パイプの失敗検知など、原因と直し方を実行結果付きでまとめています。
-
プログラミング
Pythonのログ集計を並列化しても速くならない原因と対処|ThreadPoolExecutorとProcessPoolExecutorの使い分け・GIL・max_workers・chunksize・Windowsのif name
こんにちは、おうどんです🍜 うどん屋の閉店後。 今日の注文ログを集計します。 1日ぶんで約12MB、それが8日ぶん。合わせて100MBほど。 Python で1ファイルずつ読んで、ステータスコードを数えるだけ。……なのに、ちょっと待たされます。 店長(おう... -
プログラミング
Pythonのround()で2.5が2になる原因と四捨五入する方法|偶数丸め・round(2.675, 2)が2.67になる理由・Decimalの使い方(Java・C#・PowerShell比較)
こんばんは、おうどんです🍜 うどん屋の閉店後。 今日は替え玉の日でした。 お客さんが食べた玉数を、Python で集計します。 2.5玉食べた人は、四捨五入で3玉ぶんのお会計。のはずです。 for x in [0.5, 1.5, 2.5, 3.5, -0.5, -2.5]: print(f"round... -
プログラミング
【おうどんの基礎講座】標準入出力ってなに? stdin・stdout・stderrの違いと>・2>&1・パイプの使い方
こんにちは、おうどんです🍜 うどん屋の閉店後。 今日の仕込み結果を、スクリプトに報告させます。 # udon.sh echo "kitsune udon: ready" echo "tempura udon: sold out" >&2 画面がうるさいので、結果はファイルにしまっておくことにしま... -
プログラミング
bashのwhile readでループ後に変数が消える・最終行が読まれない原因と対処|パイプのサブシェル・IFS= read -r・< <(…)・lastpipe
こんにちは、おうどんです🍜 うどん屋の閉店後。 今日の注文票を、bash で数えます。 count=0 printf 'kitsune\nzaru\nkake\n' | while read -r menu; do count=$((count + 1)) echo "in loop: $menu count=$count" done echo "after loop: count=$... -
プログラミング
PythonのTypeError: can’t compare offset-naive and offset-aware datetimesの原因と対処|utcnow()の非推奨・astimezone・zoneinfoとtzdata
こんにちは、おうどんです🍜 朝9時。 うどん屋さんの電話が鳴る。 支店「9時に出前お願いします!」 店長(おうどん)「了解、9時ね」 支店「はい、9時です!」 店長「……どこの9時?」 (場面は説明用の架空のものです) 支店は海外にありました。 ...
12