ไม่สามารถทำได้ผ่าน pip โดยตรง เพราะ PyPI บังคับชื่อ Unique ทุกแพ็กเกจ
ปัญหา
- Python ค้นหาใน
sys.pathตามลำดับ หยุดที่เจอชื่อตรงก่อน - Dependency อื่นอาจพึ่งพาชื่อนี้ → Conflict
วิธีแก้ (Workaround)
1. เปลี่ยนชื่อโมดูลใน Source Code
Copy Code มาใส่ในโปรเจกต์เอง เปลี่ยนชื่อโฟลเดอร์/แพ็กเกจ แล้ว Import ใหม่
2. Import ด้วย Alias (กรณีอยู่ใน Package ต่างกัน)
>>> from foo import bar as first_bar
>>> from baz import bar as second_bar
3. ใช้ Namespace Package (หากควบคุม Source ได้)
แยกเป็น Sub-package ภายใน Namespace เดียวกัน (ดูบทความ Namespace Packages)
แนวทางปฏิบัติ: หลีกเลี่ยงชื่อชนกัน ตั้งชื่อ Package ให้ Unique ตั้งแต่แรก (เช่น mycompany-mymodule)