মনে হচ্ছে অজগর 3 এ আপেক্ষিক আমদানি সম্পর্কে এখানে ইতিমধ্যে বেশ কয়েকটি প্রশ্ন রয়েছে তবে তাদের অনেকগুলি পরীক্ষার পরেও আমি এখনও আমার ইস্যুর উত্তর খুঁজে পাইনি। তাই এখানে প্রশ্ন.
আমার নীচে দেখানো একটি প্যাকেজ রয়েছে
package/
__init__.py
A/
__init__.py
foo.py
test_A/
__init__.py
test.py
এবং আমার টেস্ট.পি-তে একটি লাইন রয়েছে:
from ..A import foo
এখন, আমি ফোল্ডারে আছি package, এবং আমি চালাচ্ছি
python -m test_A.test
আমি বার্তা পেয়েছি
"ValueError: attempted relative import beyond top-level package"
তবে আমি যদি প্যারেন্ট ফোল্ডারে থাকি তবে package, আমি চালাই:
cd ..
python -m package.test_A.test
সবকিছু ঠিক আছে.
এখন আমার প্রশ্নটি হ'ল:
যখন আমি ফোল্ডারে থাকি packageএবং আমি test_A.testআমার বোঝার উপর ভিত্তি করে টেস্ট_এ সাব-প্যাকেজের ভিতরে মডিউলটি চালিত করি তবে এটি ..Aকেবলমাত্র একটি মাত্রায় চলে যায়, যা এখনও packageফোল্ডারের মধ্যে রয়েছে কেন এটি বার্তা বলছে beyond top-level package। ঠিক কী কারণে এই ত্রুটি বার্তার কারণ?