โมดูล Python ของบุคคลที่สามจำนวนมากมีแอตทริบิวต์ที่เก็บข้อมูลเวอร์ชันสำหรับโมดูล (โดยปกติจะมีลักษณะคล้ายmodule.VERSION
หรือmodule.__version__
) แต่บางโมดูลไม่มี
ตัวอย่างเฉพาะของโมดูลดังกล่าว ได้แก่ libxslt และ libxml2
ฉันต้องการตรวจสอบว่าเวอร์ชันที่ถูกต้องของโมดูลเหล่านี้กำลังใช้งานอยู่ที่รันไทม์ มีวิธีทำไหม?
วิธีแก้ปัญหาที่เป็นไปได้คือการอ่านซอร์สที่รันไทม์แฮชแล้วเปรียบเทียบกับแฮชของเวอร์ชันที่รู้จัก แต่นั่นเป็นเรื่องที่น่ารังเกียจ
มีวิธีแก้ไขที่ดีกว่านี้หรือไม่?