ลองนึกภาพโครงสร้างไดเรกทอรีนี้:
app/
__init__.py
sub1/
__init__.py
mod1.py
sub2/
__init__.py
mod2.py
ฉันเข้ารหัสและผมจำเป็นต้องนำเข้าจากบางสิ่งบางอย่างmod1 mod2ฉันควรทำอย่างไร
ฉันพยายามfrom ..sub2 import mod2แต่ฉันได้รับ "พยายามนำเข้าที่เกี่ยวข้องในแพคเกจที่ไม่ใช่"
ฉัน googled ไปรอบ ๆ แต่พบsys.path"แฮ็ค" การแฮ็ก ไม่มีวิธีที่สะอาดใช่มั้ย
แก้ไข: ทั้งหมดของฉัน__init__.pyว่างเปล่าในขณะนี้
Edit2: ฉันพยายามที่จะทำเช่นนี้เพราะ sub2 มีชั้นเรียนที่จะใช้ร่วมกันในแพคเกจย่อย ( sub1, subXฯลฯ )
แก้ไข 3: พฤติกรรมที่ฉันกำลังมองหาเหมือนกับที่อธิบายไว้ในPEP 366 (ขอบคุณ John B)