কম্পিউটার

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


পাইথন প্যাকেজ তৈরি বা প্রকাশ করার একটি খুব সহজ উপায় প্রদান করে।

পাইথনে প্যাকেজ ম্যানেজমেন্ট বিভিন্ন টুলের মাধ্যমে উপলব্ধ-

  • পিপ- এটি একটি পছন্দের পছন্দ হিসাবে রয়ে গেছে কারণ এটি কার্যত অপারেটিং সিস্টেমে সফ্টওয়্যার প্যাকেজগুলির যে কোনও ম্যানুয়াল ইনস্টল এবং আপডেটগুলিকে সরিয়ে দেয়৷ এটি প্যাকেজগুলির সম্পূর্ণ তালিকা এবং তাদের সংশ্লিষ্ট সংস্করণ নম্বরগুলি পরিচালনা করে, যা একটি স্বতন্ত্র, পৃথক পরিবেশে সম্পূর্ণ প্যাকেজ গোষ্ঠীগুলির সুনির্দিষ্ট নকলকে উৎসাহিত করে৷

  • Python Package Index (PPI) হল ব্যবহারকারীর জমা দেওয়া প্যাকেজগুলির একটি পাবলিক প্যাকেজ ভান্ডার যা পিপ ব্যবহার করে ইনস্টল করা যেতে পারে। পিপ ইনস্টল প্যাকেজ_নাম।

কিভাবে প্যাকেজ আপলোড করতে হয় তার একটি ধাপে ধাপে পদ্ধতি নিচে দেওয়া হল।

পদক্ষেপ 1:আপলোড করার জন্য একটি প্যাকেজ আছে

আমি অনুমান করছি যে আপনার প্যাকেজটি প্রকাশের জন্য প্রস্তুত আছে। যদি আপনার কাছে না থাকে, অনুগ্রহ করে পাইথন প্যাকেজ বা মডিউল তৈরি করার জন্য নীচের পদ্ধতি অনুসরণ করুন, ভাল জিনিস এটি খুব সহজ---

  • আপনার কোড দিয়ে একটি পাইথন ফাইল তৈরি করুন, এটিকে myfirstPackage.py বা myPackageName.py বলুন এটি একটি মডিউল। ডেটা সহ একটি ফাইল (myfirstPackage.py)। আমরা এটি আমদানি করতে পারি বা আমরা যা চাই তা করতে পারি।

  • এটিকে একটি প্যাকেজ করুন:
শুধু একটি খালি __init__.py ফাইল যোগ করুন it.echo>> __init__.pyor টাচ কমান্ড ব্যবহার করুন 

__init_.py

স্পর্শ করুন


ড্রাইভ C-তে $dirVolume-এর কোনো লেবেল নেই। ভলিউম সিরিয়াল নম্বর হল 8CD6-8D39ডিরেক্টরি-এর c:\Python\Python361\firstPackage08-04-2019 05.44 PM .08-04-2019 P. 08-04-2019 P. 08-04-2019 02.25 PM 47 myFirstPackage.py08-04-2019 05.44 PM 13 __init__.py

আপনি উপরের দুটি ফাইল প্রথম প্যাকেজ ডিরেক্টরির ভিতরে দেখতে পারেন।

এটাই, দুটি ফাইল (__init__.py এবং myfirstPackage.py) ধারণকারী একটি ডিরেক্টরি থাকাকে প্যাকেজ(myHelloModule) বলা হয়।

আপনার প্রকল্পের প্যাকেজিং

প্রথমে, নমুনা প্রকল্পটি ক্লোন করুন এবং এটিকে আপনার মডিউলের নাম দিন---

গিট ক্লোন https://github.com/pypa/sampleproject firstPackage

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

গুরুত্বপূর্ণ ফাইলগুলো হল-

  • Setup.py - এটি আমাদের প্রকল্পের কনফিগারেশন নির্দিষ্ট করতে এবং প্যাকেজিং কমান্ড চালানোর অনুমতি দেয়:উদাহরণস্বরূপ, এই কমান্ডটি চেষ্টা করুন:python setup.py --help

  • Setup.cfg হল একটি INI ফাইল যাতে setup.py কমান্ডের জন্য ডিফল্ট বিকল্প থাকে

  • README.rst restructuredText ব্যবহার করে প্রকল্পের লক্ষ্য বর্ণনা করে।

এই নতুন ফোল্ডারের মধ্যে আপনার মডিউল(গুলি) কপি করুন এবং বিদ্যমান "নমুনা" মডিউলটি সরিয়ে দিন-

└───firstPackage│ LICENSE.txt│ MANIFEST.in│ myFirstPackage.py│ README.md│ setup.cfg│ setup.py│ tox.ini│ __init__.py

নাম, সংস্করণ, বিবরণ কনফিগার করুন

আপনার Python প্যাকেজ-

সম্পর্কে প্রাথমিক তথ্য থাকতে setup.py সম্পাদনা করুন

setup.py

fh:long_description =fh.read()setuptools.setup( name="firstPackage", version="0.0.1", author="Rajesh Joshi হিসেবে
setuptools open("README.md", "r") সহ আমদানি করুন ", author_email="[email protected]", description="আমার প্রথম প্যাকেজ", long_description=long_description, long_description_content_type="text/markdown", url="https://github.com/pypa/sampleproject", packages=setuptools.find_packages(), classifiers=[ "প্রোগ্রামিং ভাষা ::পাইথন ::3", "লাইসেন্স ::OSI অনুমোদিত ::MIT লাইসেন্স", "অপারেটিং সিস্টেম ::OS স্বাধীন", ],)

এবং আপনার লাইসেন্স ফাইলটি এরকম কিছু হবে−

MIT লাইসেন্স কপিরাইট (c) [2019] [firstPackage] এই সফ্টওয়্যারটির একটি অনুলিপি এবং সংশ্লিষ্ট ডকুমেন্টেশন ফাইল ("সফ্টওয়্যার") প্রাপ্ত যেকোন ব্যক্তিকে বিনা নিষেধাজ্ঞা সহ সফ্টওয়্যার ডিল করার অনুমতি এতদ্বারা বিনামূল্যে দেওয়া হচ্ছে সীমাবদ্ধতা ছাড়াই সফ্টওয়্যারটির ব্যবহার, অনুলিপি, সংশোধন, একত্রীকরণ, প্রকাশ, বিতরণ, সাবলাইসেন্স, এবং/অথবা বিক্রি করার অধিকার, এবং যাদের কাছে সফ্টওয়্যারটি সজ্জিত করা হয়েছে তাদের অনুমতি দেওয়ার জন্য, নিম্নলিখিত শর্তাবলী সাপেক্ষে:উপরের কপিরাইট বিজ্ঞপ্তি এবং এই অনুমতি বিজ্ঞপ্তিটি সফ্টওয়্যারটির সমস্ত কপি বা উল্লেখযোগ্য অংশে অন্তর্ভুক্ত করা হবে৷ সফ্টওয়্যারটি "যেমন আছে" প্রদান করা হয়, কোন প্রকারের ওয়ারেন্টি ছাড়াই, প্রকাশ করা হয়, তবে সীমাবদ্ধ নয়, ওয়ারেন্টির জন্য অনুমতি প্রদানের জন্য সীমাবদ্ধ নয় . কোনও ক্ষেত্রেই লেখক বা কপিরাইট ধারক কোনও দাবি, ক্ষতি বা অন্যান্য দায়দায়িত্বের জন্য দায়বদ্ধ হবেন না, চুক্তির কোনও ক্রিয়াকলাপে, টর্ট বা অন্যথায়, পরবর্তী সময়ে, পরবর্তী সময়ে আমাদের থেকে উদ্ভূত .

.README এর জন্য

## firstPackage প্যাকেজ তৈরি এবং প্রকাশ করার ধাপগুলি শিখতে এটি একটি নমুনা প্যাকেজ৷

প্রকৃত প্যাকেজিং ধাপগুলি

পরিবেশে সেটআপ টুল এবং হুইল প্যাকেজ ইনস্টল বা আপডেট করুন।

>পিপ ইন্সটল হুইল টুইন সেটআপ টুলস –আপগ্রেড

প্রথমত, একটি উৎস বিতরণ তৈরি করুন। এই ধরনের "ডিস্ট্রিবিউশন" (.অর্থাৎ প্যাকেজ) এর জন্য একটি বিল্ড স্টেপ প্রয়োজন যখন পিপ দ্বারা ইনস্টল করা হয়।

>python setup.py sdist

এখন আমরা একটি "চাকা" (একটি নির্মিত প্যাকেজ) ইনস্টল করতে চাই যা উত্স বিতরণের চেয়ে ইনস্টল করা বেশি।

>python setup.py bdist_wheel

আশা করি, প্যাকেজটি তৈরি করা উচিত এবং আপনি setup.py ফাইলের পাশে আপনার প্রথম প্যাকেজ ফোল্ডারে dist ডিরেক্টরিতে প্যাকেজের সংকুচিত ফাইলটি দেখতে পারেন।

আপনার প্যাকেজ আপলোড করা হচ্ছে

এখন আপনার পছন্দের অন্য কোনো স্থানে একটি নতুন ভার্চুয়াল পরিবেশ তৈরি করুন এবং এটি সক্রিয় করুন, ঠিক নিচের মতো−

c:\Users\rajesh>virtualenv myPackage বেস উপসর্গ ব্যবহার করে 'c:\\python\\python361'c:\Users\rajesh\myPackage\Scripts\python.exe এ নির্বাহযোগ্য নতুন পাইথন সেটআপ টুল, পিপ, চাকা ইনস্টল করা হচ্ছে... done.c:\Users\rajesh\myPackage>.\Scripts\activate(myPackage) c:\Users\rajesh\myPackage>

আপনার নতুন পরিবেশে উপরে তৈরি করা জিপ ফাইলটি অনুলিপি করুন৷

>pip install firstPackage-0.0.1.tar.gz

আপনার সক্রিয় পরিবেশে আপনার প্যাকেজ ইনস্টল করা আছে কিনা তা যাচাই করতে, আপনার বর্তমান পরিবেশে সমস্ত প্যাকেজের তালিকা দেখানোর জন্য শুধু পিপ তালিকা চালান৷

>পিপ তালিকা প্যাকেজ সংস্করণ------------ -------প্রথম প্যাকেজ 0.0.1পিপ 19.0.3সেটআপ টুলস 41.0.0wheel 0.33.1

এখন সময় এসেছে প্যাকেজটি PyPI-তে প্রকাশ করার, যাতে এটি সর্বজনীনভাবে উপলব্ধ হয়।

প্রথমে সেই পাথে যান যেখানে setup.py আছে এবং তারপর টুইন প্যাকেজ ইনস্টল বা আপডেট করুন।

>পিপ ইনস্টল --আপগ্রেড সুতা

অবশেষে, টুইন,

এর মাধ্যমে আপনার প্যাকেজ PyPI-তে প্রকাশ করুন
> twine upload dist/*আপনার ব্যবহারকারীর নাম লিখুন:callraj.joshi আপনার পাসওয়ার্ড লিখুন:https://upload.pypi.org/legacy/Uploading firstPackage-0.0.1-py2.py3-none-any.whl-এ বিতরণ আপলোড করা হচ্ছে …

উপরে আমাদের শুধু ব্যবহারকারীর নাম এবং পাসওয়ার্ড লিখতে হবে, তারপর এটি আমাদের প্যাকেজ আপলোড করা শুরু করবে।


  1. পাইথন ম্যাথ অপারেটর:একটি গাইড

  2. পাইথন দোভাষী:একটি ধাপে ধাপে গাইড

  3. পাইথনে =+ এবং +=কি করে?

  4. পাইথন মডিউল এবং পাইথন প্যাকেজের মধ্যে পার্থক্য কী?