কম্পিউটার

পাইথনে প্যাকেজ এক্সটেনশন ইউটিলিটি


আপনি যখন একটি নির্দিষ্ট প্যাকেজের জন্য মডিউল অনুসন্ধানের পথে যোগ করতে চান এবং একটি প্যাকেজে অন্তর্ভুক্ত সংস্থানগুলির সাথে কাজ করতে চান, আপনাকে পাইথন লাইব্রেরি থেকে pkgutil মডিউল ব্যবহার করতে হবে। এটি পাইথন প্যাকেজের জন্য আমদানি নিয়ম পরিবর্তন করার জন্য ফাংশন অন্তর্ভুক্ত করে। প্যাকেজের মধ্যে বিতরণ করা ফাইলগুলি থেকে নন-কোড সংস্থানগুলি লোড করাও সম্ভব৷

extend_path(পথ, নাম)

একটি প্যাকেজ সমন্বিত মডিউলগুলির জন্য অনুসন্ধানের পথ প্রসারিত করুন। একটি প্যাকেজের __init__.py

-এ নিম্নলিখিত কোড স্থাপন করার উদ্দেশ্যে ব্যবহার করা হয়
pkgutil__path__ =pkgutil.extend_path(__path__, __name__)

extend_path() ডিরেক্টরির জন্য sys.path স্ক্যান করে যেটিতে দ্বিতীয় আর্গুমেন্ট হিসাবে দেওয়া প্যাকেজের জন্য একটি সাব-ডিরেক্টরি রয়েছে। ডিরেক্টরির তালিকাটি প্রথম আর্গুমেন্ট হিসাবে পাস করা পাথ মানের সাথে মিলিত হয় এবং একটি একক তালিকা হিসাবে ফিরে আসে, প্যাকেজ আমদানি পথ হিসাবে ব্যবহারের জন্য উপযুক্ত৷

ফাইন্ড_লোডার(পুরো নাম): প্রদত্ত পূর্ণনামের জন্য একটি মডিউল লোডার পুনরুদ্ধার করুন।

get_importer(path_item): প্রদত্ত পথ_আইটেমের জন্য একটি সন্ধানকারী পুনরুদ্ধার করুন।

get_loader(মডিউল_বা_নাম)

মডিউল_অর_নামের জন্য একটি লোডার অবজেক্ট পান।

iter_importers(fullname=''): প্রদত্ত মডিউল নামের জন্য ইল্ড ফাইন্ডার অবজেক্ট।

iter_modules(path=None, prefix=''): পাথের সমস্ত সাবমডিউলের জন্য মডিউল তথ্য প্রদান করে, অথবা, যদি পাথ কোনটি না হয়, sys.path-এ সমস্ত শীর্ষ-স্তরের মডিউল।

>>> pk =pkgutil.iter_modules()>>> p এর জন্য pk:প্রিন্ট (p[1])

wak_packages(path=None, prefix='', onerror=None): পাথে সব মডিউলের জন্য মডিউল তথ্য পৌনঃপুনিকভাবে পাওয়া যায়, অথবা, যদি পাথ কোনটি না হয়, সমস্ত অ্যাক্সেসযোগ্য মডিউল।

pkgutilimport sysdef explore_package(module_name):loader =pkgutil.walk_packages([loader.filename]) এ sub_module এর জন্য loader =pkgutil.get_loader(module_name) আমদানি করুন:_, sub_module_name, _ =sub_module_name _ ="+" + sub_module_name print(qname) explore_package(qname)

মডিউল ইনফো(মডিউল_ফাইন্ডার, নাম, আইএসপিকেজি):এটি একটি নেমটুপল প্রদান করে যা একটি মডিউলের তথ্যের একটি সংক্ষিপ্ত সারাংশ ধারণ করে।


  1. পাইথনে পাথ সাম

  2. মিন কস্ট পাথের জন্য পাইথন প্রোগ্রাম

  3. পাইথন কোড প্যাকেজিং এবং প্রকাশনা?

  4. কিভাবে পাইথনে পাথ যোগ করবেন?