
Python 3.15 ใส่ sentinel ตาม PEP 661 ในไฮไลต์รุ่น
หลายไลบรารีเคยสร้างอ็อบเจ็กต์ MISSING = object() เองเพื่อแยก “ไม่ได้ส่งค่า” ออกจาก None ตอนนี้สาย 3.15 ยกเรื่องนี้ขึ้นไฮไลต์รุ่น
หน้าปล่อย Python 3.15.0rc2 ระบุ PEP 661: Add sentinel built-in type คู่กับ lazy imports, frozendict และ Tachyon
Sentinel ในที่นี้คือค่าพิเศษที่สื่อความหมายเฉพาะในโค้ดของคุณ ไม่ใช่ค่าข้อมูลทั่วไป รายละเอียด API ให้อ่านจาก What’s new in Python 3.15 และเอกสารมาตรฐาน ไม่ควรเดาชื่อคอนสตรักเตอร์จากข่าวสรุป
ผมยังไม่รันตัวอย่างบนเครื่องนี้ในรอบนี้ เพราะเป้าหมายคือชี้แหล่งทางการและจังหวะทดสอบก่อน final วันที่วางไว้ 1 ตุลาคม 2026 ตามหน้าปล่อย
Recap
- เปิด what’s new ของ 3.15 แล้วค้นคำว่า sentinel
- อย่าแทนที่
Noneทุกจุดโดยไม่ตั้งเจตนา - ทดลองบน rc ก่อนพึ่งในไลบรารีสาธารณะ