কম্পিউটার

zipapp - এক্সিকিউটেবল পাইথন জিপ সংরক্ষণাগার পরিচালনা করুন


zipapp মডিউলটি 3.5 থেকে পাইথনের স্ট্যান্ডার্ড লাইব্রেরিতে চালু করা হয়েছে। এই মডিউলটি পাইথন কোড সম্বলিত জিপ ফাইল তৈরি পরিচালনা করতে ব্যবহৃত হয়, যা পাইথন ইন্টারপ্রেটার দ্বারা সরাসরি চালানো যেতে পারে। মডিউলটি একটি কমান্ড-লাইন ইন্টারফেস এবং একটি প্রোগ্রামিং ইন্টারফেস উভয়ই প্রদান করে৷

zipapp মডিউল প্রোগ্রামগতভাবে ব্যবহার করতে, আমাদের একটি মডিউল থাকা উচিত যেখানে প্রধান ফাংশন উপস্থিত রয়েছে। এক্সিকিউটেবল আর্কাইভ −

অনুসরণ করে তৈরি করা হয়
python -m zipapp myapp -m "example:main"

এখানে, বর্তমান পাথে myapp নামক একটি ফোল্ডার থাকা উচিত। এই ফোল্ডারে, example.py থাকতে হবে যার main() ফাংশন থাকতে হবে।

myapp ফোল্ডার তৈরি করুন এবং নিম্নলিখিত কোডটি example.py হিসাবে সংরক্ষণ করুন -

def main():
   print ('Hello World')
if __name__=='__main__':
   main()

কমান্ড টার্মিনাল থেকে উপরের কমান্ডটি কার্যকর করা হলে, এটি myapp.pyz তৈরি করবে। আমরা এখন কমান্ড প্রম্পট থেকে এটি কার্যকর করতে পারি।

C:\python37>python myapp.pyz
Hello World

নিম্নলিখিত কমান্ড লাইন বিকল্পগুলি সমর্থিত -

-o <output>, --output=<output>

ডিফল্টরূপে, আউটপুট ফাইলের নাম .pyz এক্সটেনশন এবং নাম ইনপুট উৎসের মতোই বহন করে। in -o বিকল্প উল্লেখ করে এটি পরিবর্তন করা যেতে পারে।

-p <interpreter>, --python=<interpreter>

এটি চালানোর কমান্ড হিসাবে স্পষ্টভাবে দোভাষী নির্দিষ্ট করতে ব্যবহৃত হয়।

-c, --compress

আউটপুট ফাইলের আকার হ্রাস করে, ডিফ্লেট পদ্ধতিতে ফাইলগুলিকে সংকুচিত করুন।

zipapp মডিউল প্রোগ্রামে ব্যবহার করা যেতে পারে. এটি নিম্নলিখিত ফাংশনগুলিকে সংজ্ঞায়িত করে -

zipapp.create_archive(উৎস)

উৎস ফোল্ডার থেকে একটি অ্যাপ্লিকেশন সংরক্ষণাগার তৈরি করুন. উপরন্তু, দোভাষী, লক্ষ্য এবং সংকুচিত আর্গুমেন্ট ব্যবহার করা যেতে পারে।

zipapp.get_interpreter(আর্কাইভ)

# এ উল্লেখিত দোভাষী ফেরত দিন! আর্কাইভের শুরুতে লাইন।

>>> import zipapp
>>> zipapp.create_archive('myapp.pyz', 'myapp')

  1. পাইথন ব্যবহার করে কিভাবে একটি জিপ ফাইল তৈরি করবেন?

  2. পাইথন ব্যবহার করে পুনরাবৃত্তভাবে একটি ফোল্ডার জিপ কিভাবে?

  3. পাইথন ব্যবহার করে একটি ডিরেক্টরির একটি জিপ সংরক্ষণাগার কিভাবে তৈরি করবেন?

  4. আমরা কিভাবে একাধিক পাইথন মডিউল বান্ডিল করতে পারি?