Python
共 3 篇關於「Python」的技術文章。
一個字元的 bug 讓 775 列準備金全錯:chainladder CapeCod.predict 拆解
美國產險精算學會的 chainladder-python 是精算師算損失準備金的標準函式庫。CapeCod.predict() 有一個 > 1 該寫成 > 0 的條件,讓最常見的使用方式拿到錯的 apriori:comauto 業務線擬合值 0.569,預測回傳 1.252,775 列全錯。既有測試覆蓋了那條路徑卻沒抓到,原因是它用的資料集永遠走另一個分支。這篇講 Cape Cod 方法在做什麼、那一行為什麼錯、測試怎麼漏、以及依 casact 政策做的 AI 使用揭露。
Python 的 **kwargs 接不到具名參數:人道 OpenStreetMap 無人機系統每張災區照片都存錯格式的原因
一個函式簽章裡有 content_type,文件也寫了,呼叫下游 SDK 時卻只傳了位置參數加 **kwargs。因為 content_type 是具名參數,Python 把值綁在它身上,kwargs 裡是空的,所以每一張災後空拍照都以 application/octet-stream 存進 S3,瀏覽器只會下載不會顯示。這篇用 hotosm/drone-tm #882 講 Python 參數綁定的規則、為什麼同一個函式的 metadata 沒事、以及一個 mock 要綁真簽章的測試寫法。
24 天內併入六個組織的七筆 PR:維護者教我的七件事
從美國產險精算學會到人道 OpenStreetMap,24 天內七筆 PR 被六個組織的維護者合併(美國產險精算學會收了兩筆)。這篇逐筆拆解:bug 在哪一行、為什麼測試沒抓到、維護者在審查時糾正了我什麼。三個共同病灶:只跑 Linux 的 CI、為了錯的理由通過的測試、被語言語意騙過的哨兵值。每一筆都附 PR 連結,可以自己去對。