পাইপ এবং কনডায় পার্থক্য কী?


721

আমি জানি pipপাইথন প্যাকেজগুলির জন্য একটি প্যাকেজ পরিচালক। যাইহোক, আমি আইপিথন condaইনস্টল করতে আইপিথনের ওয়েবসাইটে ব্যবহার দেখেছি ।

আমি কি pipআইপিথন ইনস্টল করতে ব্যবহার করতে পারি ? condaআমি ইতিমধ্যে যখন অন্য পাইথন প্যাকেজ ম্যানেজার হিসাবে ব্যবহার করব pip?

মধ্যে পার্থক্য কি pipএবং conda?


সাবধানে পড়া ইনস্টল পৃষ্ঠা দেখা হবে পূর্ণ নির্দেশ পিপ এবং যে সঙ্গে ইনস্টল করতে conda/ enpgkএ পরিকল্পনা new users who want to get up and running with minimal effort: শামিয়ানা / anaconda দ্বারা স্বতন্ত্র environement হয়, সিস্টেম পাইথন (venv কিন্তু শক্তিশালী মত) হস্তক্ষেপ করে না। বিটিডাব্লু আইপিটন, আইপ্যাথন নয় (আপার কেস আই)
ম্যাট

3
একটি পার্থক্য হ'ল পাইপ দ্বারা কনডায়ার চেয়ে আরও অনেক কিছুই ইনস্টল করা যেতে পারে: পাইপ একটি কমান্ডে পাইপি থেকে যে কোনও কিছু ইনস্টল করতে পারে। কন্ডার জন্য তিনটি কমান্ড প্রয়োজন: কঙ্কাল, বিল্ড, ইনস্টল এবং সম্ভবত এটি কাজ না করে তবে আরও অনেক কিছু। পিপ এক কমান্ডে গিথুব বা উত্স থেকে যে কোনও কিছু ইনস্টল করতে পারে। কনডায় একটি "রেসিপি" রচনা দরকার, যা সহজ নয়, বিশেষত যেহেতু ডকুমেন্টেশনটি সবসময়ই ভুল / পুরানো বলে মনে হয়।
এন্ডোলিথ

5
সম্পর্কিত প্রশ্ন: কন্ডার উপর পাইপের অ্যাডভান্সেটগুলি কী কী? আমি নীচে প্রচুর অ্যানাকোন্ডার এডভোকেসি দেখতে পাচ্ছি, তবে পাইপের জন্য কিছুই নেই। পিপ এখনও মানক কেন, যদি অ্যানাকোন্ডা এত দুর্দান্ত?
ব্রায়ান পোস্টো

24
আমি এই উদ্ধৃতি জ্ঞানগর্ভ খুঁজে: " পিপ একটি প্যাকেজ ম্যানেজার, এবং Virtualenv একটি পরিবেশ পরিচালক। Conda উভয় হয়।" ( রেফ। )
অ্যাটকোল্ড

1
পর্যবেক্ষণ: আমি মনে করতাম কনডা জিলিয়ন প্যাকেজগুলি ডাউনলোড করার জন্য বোঝায়, তবে এটি এখন আর সত্য নয়: আপনি মিনিকোন্ডা ইনস্টল করতে পারেন, যা মূলত কেবল প্যাকেজ ম্যানেজার হিসাবে মনে হয়, কনডা.আইও / ডকস / ইনস্টল / এককিউচটিএমএল
হিউ পার্কিনস

উত্তর:


520

কন্ডা ব্লগ থেকে উদ্ধৃতি :

অজগর বিশ্বে এত দিন জড়িত থাকার পরে আমরা পাইপ, ইজি_ইনস্টল এবং ভার্চুয়ালেনভ সম্পর্কে সকলেই সচেতন, তবে এই সরঞ্জামগুলি আমাদের নির্দিষ্ট প্রয়োজনীয় সমস্তগুলি পূরণ করে নি। মূল সমস্যাটি হ'ল এগুলি পাইথনের আশেপাশে ফোকাস করা, পাইথন গ্রন্থাগার নির্ভরতা অবহেলা করা যেমন এইচডিএফ 5, এমকেএল, এলএলভিএম ইত্যাদি, যার সোর্স কোডে সেটআপ.পি নেই এবং পাইথনের সাইটে ফাইল ইনস্টল করে না do -প্যাকেজ ডিরেক্টরি।

সুতরাং কন্ডা একটি প্যাকেজিং সরঞ্জাম এবং ইনস্টলার যা এর চেয়ে বেশি কিছু করার লক্ষ্য pipকরে; পাইথন প্যাকেজগুলির বাইরের লাইব্রেরি নির্ভরতা পাশাপাশি পাইথন প্যাকেজগুলি হ্যান্ডেল করুন । কন্ডাও ভার্চুয়াল পরিবেশ তৈরি virtualenvকরে।

এর মতো, কনডাকে তুলনা করা উচিত বিল্ডআউটের সাথে, সম্ভবত অন্য একটি সরঞ্জাম যা আপনাকে পাইথন এবং পাইথন নন উভয়ই ইনস্টলেশন কার্য পরিচালনা করতে দেয়।

যেহেতু কন্ডা একটি নতুন প্যাকেজিং ফর্ম্যাট প্রবর্তন করেছে, আপনি pipআদান-প্রদানের সাথে কন্ডা ব্যবহার করতে পারবেন না ; pipকন্ডা প্যাকেজ ফর্ম্যাটটি ইনস্টল করতে পারে না। আপনি পাশাপাশি দুটি সরঞ্জাম ব্যবহার করতে পারেন ( pipসাথে ইনস্টল করে conda install pip) তবে সেগুলি কোনওভাবেই আন্তঃক্রিয়াবদ্ধ হয় না।

এই উত্তরটি লেখার পর থেকে, অ্যানাকোন্ডা কনডা এবং পিপ বোঝার উপর একটি নতুন পৃষ্ঠা প্রকাশ করেছে , যা এটিও প্রতিধ্বনিত করে:

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

এবং আরও

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


18
তোমার ব্যাখ্যার জন্য ধন্যবাদ. আমি এখনও বিভ্রান্ত হয়েছি, তবে কনডা পাইপ প্রতিস্থাপন করতে পারবে কিনা তা নিয়ে? অর্থাত্, কন্ডা কি পাইপ করতে পারে তা সমস্ত করতে পারে?
অলসওয়ে

10
@ লাজেওয়ে: আমি মনে করি না এটি পারে; দেখে মনে হচ্ছে না কন্ডা যেমন চাকা সংরক্ষণাগার ফর্ম্যাটটিকে সমর্থন করে। তাদের লক্ষ্য ভিন্ন।
মার্টিজন পিটারস

45
@ naught101 "কেবল একটি রেসিপি তৈরি করুন" এটি টাইপ করার মতো সহজ নয় pip install
এন্ডোলিথ

23
কেউ কেউ আমাকে ব্যাখ্যা করতে পারেন যে আপনি যদি বিভিন্ন সংস্করণ ব্যতীত একই প্যাকেজটি ইনস্টল করতে পাইপ এবং কনডা ব্যবহার করেন, আপনি যখন আমদানি করবেন তখন অজগরটি ব্যবহার করবে?
ল্যান্স রুও জাং

4
@ জিরহ: ওএস প্যাকেজ ম্যানেজার ব্যবহার করার সময় আপনি একই প্যাকেজের একাধিক সংস্করণ পাশাপাশি ইনস্টল করতে পারবেন না, মূল বৈশিষ্ট্য হিসাবে নয়। কনডা পরিবেশের পরিচালনা করে , প্রতিটি তাদের নিজস্ব সংস্করণে নির্দিষ্ট সংস্করণে ইনস্টল করা প্যাকেজগুলির মিশ্রণ দেয়। সুতরাং প্রকল্প এ, কিছুকাল আগে তৈরি করা হয়েছিল, এখনও গ্রন্থাগার ফু এর পুরানো সংস্করণে আটকে থাকতে পারে (নতুন রিলিজ দিয়ে কাজ করার জন্য প্রকল্পের আপগ্রেড করার কোনও সংস্থান নেই) অন্যদিকে প্রকল্প বি একই লাইব্রেরির নতুন সংস্করণ প্রয়োজন requires
মার্টিজন পিটারস

245

এখানে একটি সংক্ষিপ্ত পালা:

বীচি

  • পাইথন প্যাকেজগুলি কেবল।
  • উত্স থেকে সবকিছু সংকলন। সম্পাদনা: পাইপ এখন বাইনারি চাকাগুলি ইনস্টল করে, যদি সেগুলি পাওয়া যায়।
  • মূল পাইথন সম্প্রদায় দ্বারা ধন্য (যেমন পাইথন ৩.৪++ এমন কোড রয়েছে যা স্বয়ংক্রিয়ভাবে পাইপ বুটস্ট্র্যাপ করে)।

conda

  • পাইথন অগনস্টিক। বিদ্যমান প্যাকেজগুলির মূল ফোকাস পাইথনের জন্য, এবং প্রকৃতপক্ষে কন্ডা নিজেই পাইথনে লেখা আছে, তবে সি লাইব্রেরি, বা আর প্যাকেজস বা সত্যিকারের যে কোনও কিছুর জন্যও আপনার কনডা প্যাকেজ থাকতে পারে।
  • বাইনারি ইনস্টল করে। একটি সরঞ্জাম বলা হয় conda buildযা উত্স থেকে প্যাকেজগুলি তৈরি করে তবে এটি conda installইতিমধ্যে নির্মিত কন্ডা প্যাকেজগুলি থেকে জিনিসগুলি ইনস্টল করে।
  • এক্সটার্নাল। কনডা হ'ল অ্যানাকোন্ডার প্যাকেজ ম্যানেজার, কন্টিনাম অ্যানালিটিক্স দ্বারা প্রদত্ত পাইথন বিতরণ, তবে এটি অ্যানাকোন্ডার বাইরেও ব্যবহার করা যেতে পারে। এটি পাইপ ইনস্টল করে আপনি এটি বিদ্যমান পাইথন ইনস্টলেশনের সাথে ব্যবহার করতে পারেন (যদিও আপনার কাছে কোনও বিদ্যমান ইনস্টলেশন ব্যবহারের উপযুক্ত কারণ না থাকলে এটি প্রস্তাবিত নয়)।

উভয় ক্ষেত্রেই:

  • পাইথনে লেখা
  • মুক্ত উত্স (কন্ডাটি বিএসডি এবং পাইপটি এমআইটি)

কন্ডার প্রথম দুটি বুলেট পয়েন্ট হ'ল এটিই অনেক প্যাকেজের জন্য পাইপের চেয়ে সুবিধাজনক করে তুলেছে। যেহেতু পাইপ উত্স থেকে ইনস্টল করে, আপনি উত্স কোডটি সংকলন করতে না পারলে এটি দিয়ে জিনিসগুলি ইনস্টল করা বেদনাদায়ক হতে পারে (এটি উইন্ডোজে বিশেষত সত্য, তবে প্যাকেজগুলির মধ্যে কিছু সি বা ফরটারান লাইব্রেরি থাকলে লিনাক্সেও এটি সত্য হতে পারে) নির্ভরতা)। কন্ডা বাইনারি থেকে ইনস্টল করে, যার অর্থ কেউ প্যাকেজ সংকলনের ইতিমধ্যে কঠোর পরিশ্রম করেছে এবং তাই ইনস্টলেশনটি সহজ।

আপনি যদি নিজের প্যাকেজগুলি তৈরি করতে আগ্রহী হন তবে কিছু পার্থক্যও রয়েছে। উদাহরণস্বরূপ, পাইপ সেটআপলগুলির শীর্ষে নির্মিত হয়েছে, যেখানে কন্ডা নিজস্ব ফর্ম্যাট ব্যবহার করে, এর কিছু সুবিধা রয়েছে (যেমন স্থির এবং আবার পাইথন অজোনস্টিক)।


21
পাইপ আর উত্স থেকে সবকিছু তৈরি করে না। যদি একটি চাকা উপলব্ধ থাকে তবে pip install --use-wheel <package>একটি বিল্ট প্যাকেজ ইনস্টল করবে। এখানে দেখুন: wheel.readthedocs.org/en/latest । তবে চাকার সাথে আমার ব্যক্তিগত অভিজ্ঞতা হ'ল এমন কয়েকটি বৈজ্ঞানিক হুইল প্যাকেজ পাওয়া যায় যে এটি নিখুঁত একাডেমিক। এবং অবশ্যই পাইপ ইনস্টল বেশিরভাগ উইন্ডোজে কাজ করে না যদি আপনার বিল্ড পরিবেশটি ঠিকঠাকভাবে সেট আপ না করে। এই মুহুর্তে, কনডা ftw।
কালেব হাটিংহ

4
চাকাগুলি এখনও নতুন, এবং এটি ডিফল্টরূপে ব্যবহার করা হয়নি, তাই অবাক হওয়ার মতো কিছু নেই যে এখনও তাদের মধ্যে অনেকগুলি নেই। চাকাটি এখনও "পাইথন সুনির্দিষ্ট" বিভাগে ফিট করে যদিও এর অর্থ এটি পাইথন নন প্যাকেজ, বা পাইথন প্যাকেজগুলির উপর নির্ভরশীল পাইথন প্যাকেজগুলির জন্য উপযুক্ত ফিট হতে পারে।
asmeurer

4
আমাকে এটিকে নীচে নামাতে হয়েছিল: দ্বিতীয় বুলেট পয়েন্টটি এখন একটি noteতিহাসিক নোট, তবে আপনি পরে এটি চালিয়ে যান। আজকাল মূল পার্থক্য হ'ল পাইপ হ'ল প্যাকেজ ম্যানেজার এবং কনডা একটি পরিবেশ পরিচালক হিসাবে বেশি।
শেপ

9
এটি সত্য যে পিপ উত্স থেকে সংকলন করতে পারে তবে প্যাকেজটিতে চলাচল করার কারণে এটি কম এবং কম ঘন ঘন হয়ে উঠছে: আজকাল আমি পিপ দিয়ে কয়েক সেকেন্ডের মধ্যে যা প্রয়োজন তার বেশিরভাগই ইনস্টল করতে পারি। সুতরাং এটি এই নয় যে এই উত্তরটি ভুল, এটি সামান্য পুরানো হয়ে উঠছে কারণ গত কয়েক বছরে
পাইপের

4
এটি কখনও সত্য নয় যে পাইপ কেবল উত্স থেকে ইনস্টল করতে পারে। চাকার আগে আমাদের ডিফল্ট বাইনারি ইনস্টল ফর্ম্যাট এবং উইন্ডোজ ইনস্টলেশনের জন্য প্রস্তাবিত বিতরণ ফর্ম্যাট হিসাবে ডিম ছিল এবং পাইপটি সর্বোত্তম উপলভ্য বিকল্প হলে ডিম ইনস্টল করে (এবং এখনও করবে) still
মার্টিজন পিটারস

96

অন্যান্য উত্তরগুলি বিশদটির সুষ্ঠু বিবরণ দেয় তবে আমি কয়েকটি উচ্চ-স্তরের পয়েন্ট হাইলাইট করতে চাই।

পিপ একটি প্যাকেজ ম্যানেজার ইনস্টলেশন, আপগ্রেড এবং আনইনস্টল সমাধা হয় পাইথন প্যাকেজ । এটি ভার্চুয়াল পাইথন পরিবেশের সাথেও কাজ করে ।

কনডা হ'ল যে কোনও সফ্টওয়্যার (ইনস্টলেশন, আপগ্রেড এবং আনইনস্টলেশন) এর প্যাকেজ ম্যানেজার । এটি ভার্চুয়াল সিস্টেম পরিবেশের সাথেও কাজ করে ।

কনডা ডিজাইনের একটি লক্ষ্য হ'ল ব্যবহারকারীদের দ্বারা প্রয়োজনীয় সম্পূর্ণ সফ্টওয়্যার স্ট্যাকের জন্য প্যাকেজ পরিচালনা সহজতর করা, যার মধ্যে এক বা একাধিক অজগর সংস্করণ কেবল একটি ছোট অংশ হতে পারে। এই যেমন Windows এ mingw যেমন রৈখিক বীজগণিত, কম্পাইলার যেমন নিম্ন স্তরের লাইব্রেরি, অন্তর্ভুক্ত, সম্পাদক, এইচ জি এবং গীত বা এগুলির মতো সংস্করণ নিয়ন্ত্রণ সরঞ্জাম যাই হোক না কেন অন্য বিতরণ এবং পরিচালনার প্রয়োজন

সংস্করণ পরিচালনার জন্য, পাইপ আপনাকে একাধিক অজগর পরিবেশের মধ্যে স্যুইচ এবং পরিচালনা করতে দেয় ।

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

কনডা উইন্ডোজ কেন্দ্রিক নয়, তবে উইন্ডোজে এটি এখনকার উচ্চতর সমাধানটি পাওয়া যায় যখন জটিল বৈজ্ঞানিক প্যাকেজগুলি সংকলনের প্রয়োজন হয় যখন ইনস্টল এবং পরিচালনা করা প্রয়োজন।

আমি যখন উইন্ডোতে পাইপের মাধ্যমে এই প্যাকেজগুলির অনেকগুলি সঙ্কলন করার চেষ্টা করে ফেলেছি বা pip installসংকলন প্রয়োজন ছিল তখন ব্যর্থ সেশনগুলি ডিবাগ করতে গিয়ে কত সময় হারিয়েছি তা ভেবে আমি কাঁদতে চাই ।

একটি চূড়ান্ত পয়েন্ট হিসাবে, নিয়মিত প্যাকেজ বিকাশকারীদের তাদের নিজস্ব কাস্টম (বিল্ট!) সফ্টওয়্যার স্ট্যাক তৈরি করতে দেয় যা তাদের প্যাকেজ-ব্যবহারকারীরা সক্ষম করতে পারবে কন্টিনিয়াম অ্যানালিটিকাগুলি (ফ্রি) বিনস্টার.অর্গ (বর্তমানে অ্যানাকোন্ডা.অর্গ নামে পরিচিত ) হোস্ট conda installকরে।


4
আপনার চূড়ান্ত পয়েন্ট অনুসারে, তৃতীয় পক্ষের কনডা-ফোর্স প্রকল্পটি অ্যানাকোন্ডা প্যাকেজগুলি প্রকাশের জন্য শিল্প-মানক পদ্ধতির হয়ে উঠেছে। আমরা সম্প্রতি আমাদের মাল্টিফিজিক্স বায়োলজি সিমুলেটারের জন্য বেশ কয়েকটি কনডা-ফোর্জ-হোস্টেড প্যাকেজ প্রকাশ করেছি - এবং প্রক্রিয়াটির যথেষ্ট প্রস্তাব দিতে পারি না recommend কনডা-ফোর্জে নতুন রেসিপি জমা দেওয়ার জন্য একটি গিটহাব পিআর-ভিত্তিক পিয়ার রিভিউ উপাদান রয়েছে, তবে কনডা-ফোর্স অটোমেশনের ক্ষেত্রে সুবিধাগুলি সামনের সময়ের বিনিয়োগের তুলনায় দৃ .়তার চেয়ে বেশি। বাম!
সিসিল কারি

@ সিসিলকারি আমি Kerasআমার কোডটি আমদানি করেছি , আমার ম্যাকে অ্যানাকোন্ডা ইনস্টল করেছি এবং কেরাস উভয়ই condaইনস্টল এবং pipইনস্টল করা আছে। সুতরাং, টার্মিনালে আমার কোড চালানোর সময়, আমি কীভাবে জানব যেটি kerasআমদানি করা হচ্ছে ( pipএক বা condaএক)?
কেপিএমজি

25

আপনাকে আরও বিভ্রান্ত করার জন্য নয়, তবে আপনি আপনার কনডা পরিবেশের মধ্যে পিপও ব্যবহার করতে পারেন যা সাধারণ বনাম অজগর নির্দিষ্ট পরিচালকদের মন্তব্যকে বৈধতা দেয়।

conda install -n testenv pip
source activate testenv
pip <pip command>

আপনি যে কোনও পরিবেশের ডিফল্ট প্যাকেজগুলিতে পাইপ যুক্ত করতে পারেন যাতে এটি প্রতিবার উপস্থিত থাকে যাতে আপনাকে উপরের স্নিপেটটি অনুসরণ করতে হবে না।


আমি ভেবেছিলাম এটি সুপারিশ করা হয়নি?
এন্ডোলিথ

7
এটি কন্ডার অভ্যন্তরে পাইপ ব্যবহার করার জন্য পুরোপুরি প্রস্তাবিত। কনডা ব্যবহার করে ইনস্টল করা ভাল, তবে যে প্যাকেজগুলির মধ্যে কনডা বিল্ড নেই, এটি পিপ ব্যবহার করা একেবারে গ্রহণযোগ্য।
ব্র্যাডলি ক্রাইডার 26'16

2
নীট: কথাটি কি মনে হবে fully supported? fully recommendedবোঝা যাচ্ছে, কন্ডার চেয়ে পিপ ব্যবহার করা ভাল, আমার মনে মনে মনে, একটি এনডি আমি নিশ্চিত নই যে আপনি / তাদের অর্থ কি?
হিউ পার্কিনস

22

কনটেনিয়ামের ওয়েবসাইটে ডেটা সায়েন্স নিবন্ধের জন্য কনডা থেকে উদ্ধৃতি :

কনডা বনাম পাইপ

পাইথন প্রোগ্রামাররা সম্ভবত পিপিআই থেকে প্যাকেজগুলি ডাউনলোড করতে এবং প্রয়োজনীয়তাগুলি পরিচালনা করতে পাইপের সাথে পরিচিত। যদিও, কনডা এবং পাইপ উভয়ই প্যাকেজ পরিচালক, সেগুলি খুব আলাদা:

  • পাইপ পাইথন প্যাকেজগুলির জন্য নির্দিষ্ট এবং কনডা হ'ল ভাষা-অজ্ঞানী, যার অর্থ আমরা কোনও ভাষা থেকে প্যাকেজ পরিচালনা করতে কনডা ব্যবহার করতে পারি উত্স থেকে পাইপ সংকলন এবং কনডা বাইনারি ইনস্টল করে সংকলনের বোঝা সরিয়ে দেয়
  • কন্ডা স্থানীয়ভাবে ভাষা-অজ্ঞাত পরিবেশ তৈরি করে যেখানে পাইপ কেবল পাইথন পরিবেশ পরিচালনার জন্য ভার্চুয়ালেনভের উপর নির্ভর করে যদিও সর্বদা কনডা প্যাকেজ ব্যবহার করার পরামর্শ দেওয়া হয়, কনডায় পিপও অন্তর্ভুক্ত থাকে, সুতরাং আপনার দুটির মধ্যে একটি বেছে নিতে হবে না। উদাহরণস্বরূপ, পাইথন প্যাকেজ ইনস্টল করার জন্য যা কনডা প্যাকেজ নেই, তবে পাইপের মাধ্যমে পাওয়া যায়, কেবল চালান, উদাহরণস্বরূপ:
conda install pip
pip install gensim

15

কনডা থেকে উদ্ধৃতি : মিথ এবং ভুল ধারণা (একটি বিস্তৃত বিবরণ):

...

মিথ # 3: কন্ডা এবং পাইপ সরাসরি প্রতিযোগী

বাস্তবতা: কন্ডা এবং পাইপ বিভিন্ন উদ্দেশ্যে পরিবেশন করে এবং কেবলমাত্র ছোট ছোট কাজগুলিতে সরাসরি প্রতিযোগিতা করে: যথা পৃথক পরিবেশে পাইথন প্যাকেজ ইনস্টল করা।

পিপ, যার অর্থ পি আইপি আই এনস্টল পি অ্যাকাইজেস, পাইথনের অফিসিয়ালি অনুমোদিত অনুমোদিত প্যাকেজ ম্যানেজার, এবং পাইথন প্যাকেজ সূচক (পাইপিআই) এ প্রকাশিত প্যাকেজ ইনস্টল করতে সাধারণত ব্যবহৃত হয়। পাইপ এবং পাইপিআই উভয়ই পাইথন প্যাকেজিং কর্তৃপক্ষের (পিপিপিএ) দ্বারা পরিচালিত এবং সমর্থিত।

সংক্ষেপে, পাইপ পাইথন প্যাকেজগুলির জন্য একটি সাধারণ-উদ্দেশ্য পরিচালক; কনডা হ'ল একটি ভাষা-অজ্ঞাত ক্রস-প্ল্যাটফর্ম পরিবেশ পরিচালক। ব্যবহারকারীর জন্য, সবচেয়ে স্পষ্টত পার্থক্য সম্ভবত এটি: পিপ যে কোনও পরিবেশের মধ্যে পাইথন প্যাকেজ ইনস্টল করে; কনডা কনডা পরিবেশের মধ্যে যে কোনও প্যাকেজ ইনস্টল করে। যদি আপনি যা করছেন সবই যদি পৃথক পরিবেশের মধ্যে পাইথন প্যাকেজ ইনস্টল করা হয় তবে কনডা এবং পাইপ + ভার্চুয়ালেনভ বেশিরভাগই বিনিময়যোগ্য, নির্ভরতা হ্যান্ডলিং এবং প্যাকেজের প্রাপ্যতার মধ্যে কিছুটা পার্থক্য। বিচ্ছিন্ন পরিবেশের দ্বারা আমি একটি কনডা-এনভ বা ভার্চুয়ালেনভ বোঝাতে চাইছি, যেখানে আপনি আপনার সিস্টেমে পাইথন ইনস্টলেশনটি পরিবর্তন না করে প্যাকেজ ইনস্টল করতে পারেন।

এমনকি পৌরাণিক কাহিনী # 2 বাদ দিয়ে, যদি আমরা পাইথন প্যাকেজগুলি ঠিকঠাক ইনস্টল করার দিকে মনোনিবেশ করি তবে কনডা এবং পাইপ বিভিন্ন শ্রোতাদের এবং বিভিন্ন উদ্দেশ্যে পরিবেশন করে। যদি আপনি চান, বলুন, বিদ্যমান পাইথন ইনস্টলেশন মধ্যে পাইথন প্যাকেজগুলি পরিচালনা করুন, কনডা আপনাকে সহায়তা করতে পারে না: নকশা অনুসারে, এটি কেবল কনডা পরিবেশের মধ্যে প্যাকেজ ইনস্টল করতে পারে। আপনি যদি বলতে চান, বাহ্যিক নির্ভরতা (NumPy, SciPy, এবং Matplotlib সাধারণ উদাহরণ) এর উপর নির্ভর করে এমন বহু পাইথন প্যাকেজ নিয়ে কাজ করুন, যখন সেই নির্ভরতাগুলি অর্থপূর্ণ উপায়ে ট্র্যাক করার সময়, পাইপ আপনাকে সহায়তা করতে পারে না: নকশার দ্বারা এটি এটি পাইথন প্যাকেজ এবং কেবল পাইথন প্যাকেজ পরিচালনা করে।

কনডা এবং পাইপ প্রতিযোগী নয়, বরং ব্যবহারকারীদের বিভিন্ন গোষ্ঠী এবং ব্যবহারের ধরণগুলির উপর দৃষ্টি নিবদ্ধ করে tools


1
আমি নিশ্চিত না যে এটি সত্যই সত্য, বাজারের অবস্থানের দৃষ্টিকোণের বাইরে। উদাহরণস্বরূপ, পাইটর্চটি দেখুন, যা তিন ধরণের ইনস্টল সরবরাহ করে: কনডা, পিপ, উত্স, পাইটরচ.আর এবং সুপারিশ করে: কনদা
হিউ পার্কিনস

2
"বিচ্ছিন্ন পরিবেশে পাইথন প্যাকেজ ইনস্টল করা" বেশিরভাগ পাইথন বিকাশকারীরা পাইপ ব্যবহার করার মূল বিষয় এটি।
নিক

@ নিক তখনই নয় যখন বিকাশকারী ইতিমধ্যে 'সেই' ভার্চুয়াল পরিবেশে থাকে? আমি মনে করি পিপ ভার্চুয়াল পরিবেশে কাজ করে এবং প্যাকেজ ইনস্টল করে যেন এটি কোনও সিস্টেমের জন্য ইনস্টল করে san আমি ভুল হলে যে কেউ দয়া করে আমাকে সংশোধন করুন।
চ্যান কিম

12

উইন্ডো ব্যবহারকারীদের জন্য

"স্ট্যান্ডার্ড" প্যাকেজিং সরঞ্জামগুলির পরিস্থিতি সম্প্রতি উন্নতি করছে:

  • পাইপিতে নিজেই, এখন সেপ্ট হিসাবে ৪৮% হুইল প্যাকেজ রয়েছে। 11 তম 2015 (মে 2015 এর 38% থেকে, সেপ্টেম্বর 2014 সালে 24%),

  • হুইল ফর্ম্যাটটি এখন সর্বশেষ অজগর প্রতি 2.7.9-এর বাইরে বাক্সের বাইরে সমর্থনযোগ্য,

"স্ট্যান্ডার্ড" + "টুইটস" প্যাকেজিং সরঞ্জামগুলির পরিস্থিতিও উন্নতি করছে:

  • আপনি চাকা বিন্যাসে প্রায় সমস্ত বৈজ্ঞানিক প্যাকেজ http://www.lfd.uci.edu/~gohlke/pythonlibs এ খুঁজে পেতে পারেন ,

  • মিংপ্পি প্রকল্পটি উইন্ডোজ ব্যবহারকারীদের কাছে একদিন একটি 'সংকলন' প্যাকেজ আনতে পারে, যখন প্রয়োজন হতে উত্স থেকে সমস্ত কিছু ইনস্টল করতে দেয়।

"কনডা" প্যাকেজিং এটি যে বাজারে সরবরাহ করে তার জন্য আরও ভাল থেকে যায় এবং যেখানে "মান" উন্নত করা উচিত সেগুলি হাইলাইট করে ।

(এছাড়াও, স্ট্যান্ডার্ড হুইল সিস্টেম এবং কনডা সিস্টেম, বা বিল্ডআউটে নির্ভরতা স্পেসিফিকেশন একাধিক-প্রচেষ্টা, খুব পাইথোনিক নয়, এই সমস্ত প্যাকেজিং 'কোর' কৌশলগুলি পিইপির এক ধরণের মাধ্যমে একত্রিত করতে পারলে ভাল হবে)



2

আইপিথন ইনস্টল করতে আমি কি পিপ ব্যবহার করতে পারি?

অবশ্যই, উভয় (পৃষ্ঠায় প্রথম পদ্ধতির)

pip install ipython

এবং (তৃতীয় পদ্ধতির, দ্বিতীয়টি conda)

আপনি নিজেই গিটহাব বা পিপিআই থেকে আইপিথন ডাউনলোড করতে পারেন। এই সংস্করণগুলির মধ্যে একটি ইনস্টল করতে, এটি আনপ্যাক করুন এবং টার্মিনালটি ব্যবহার করে শীর্ষ-স্তরের উত্স ডিরেক্টরি থেকে নিম্নলিখিতটি চালান:

pip install .

হয় ইনস্টল করতে আনুষ্ঠানিকভাবে সুপারিশ উপায়ে

আমার যখন ইতিমধ্যে পাইপ রয়েছে তখন কেন আমি অন্য পাইথন প্যাকেজ ম্যানেজার হিসাবে কনডা ব্যবহার করব?

এখানে যেমন বলা হয়েছে :

আপনার যদি সুনির্দিষ্ট প্যাকেজ দরকার হয়, তবে কেবল একটি প্রকল্পের জন্য বা আপনার যদি অন্য কারও সাথে প্রকল্পটি ভাগ করে নেওয়া দরকার তবে কনডা আরও উপযুক্ত মনে হয়।

কন্ডা পাইপকে ছাড়িয়ে গেছে ( ওয়াইএমএমভি )

  • অজগর সরঞ্জামগুলি ব্যবহার করে এমন প্রকল্পগুলি
  • সহকর্মীদের সাথে ভাগ
  • সংস্করণগুলির মধ্যে স্যুইচিং
  • বিভিন্ন গ্রন্থাগারের সংস্করণ সহ প্রকল্পগুলির মধ্যে স্যুইচিং

পাইপ এবং কনডায় পার্থক্য কী?

এটি প্রত্যেকেই প্রত্যক্ষভাবে উত্তর দিয়ে গেছে।


1

pip পাইথনের জন্য

condaকেবলমাত্র অ্যানাকোন্ডা + অন্যান্য বৈজ্ঞানিক প্যাকেজগুলির জন্য যেমন আর ডি নির্ভরতা ইত্যাদি etc. প্রত্যেকেরই ইতিমধ্যে পাইথন নিয়ে আসা অ্যানাকোন্ডার প্রয়োজন নেই। অ্যানাকোন্ডা বেশিরভাগ তাদের জন্য যারা মেশিন লার্নিং / ডিপ লার্নিং ইত্যাদি করেন। ক্যাজুয়াল পাইথন দেব তার ল্যাপটপে অ্যানাকোন্ডা চালাবেন না।


সহজ ব্যাখ্যা, তবে আমাকে সরাসরি অ্যানাকোন্ডার ওয়েবসাইটে যেতে এবং পাইথন ২.x বা 3.x বিতরণ ডাউনলোড করতে শেখানো হয়েছিল। কেন? > কারণ এতে শিক্ষার্থীর প্রয়োজনীয় সমস্ত প্যাকেজ রয়েছে। নম্পি, স্কিপি, ম্যাটপ্লিয়টলিব, স্কেলারন ইত্যাদি ঠিক এই কারণেই সূক্ষ্ম মৌলিক বিবরণ বোঝার ফাঁক রয়েছে। ছাত্র
রিনি ডুচাম্প

আমি জানি এই মুহুর্তে এটি একটি পুরানো উত্তর, তবে আপনি কন্ডা / অ্যানাকোন্ডা সম্পর্কে যা লিখেছেন তা আমার কাছে সম্পূর্ণ মিথ্যা বলে মনে হচ্ছে।
এএমসি

0

আমি একটি ছোটখাটো প্রকৃতির আরও একটি পার্থক্য খুঁজে পেয়েছি। আমার অজগর পরিবেশের /usrচেয়ে /homeবা তার চেয়ে কম কিছু আছে। এটি ইনস্টল করার জন্য, আমি ব্যবহার করতে হবে sudo install pip। আমার জন্য, এর অবাঞ্ছিত পার্শ্ব প্রতিক্রিয়া sudo install pipকি ব্যাপকভাবে অন্যত্র রিপোর্ট করা হয় তুলনায় কিছুটা ভিন্ন ছিল: এমনটি পর, আমি পালিয়ে ছিল pythonসঙ্গে sudoআদেশের কোনো আমদানি করতে sudo-installed প্যাকেজ। আমি এটি ছেড়ে দিয়েছিলাম এবং অবশেষে আমি এমন sudo condaপরিবেশে প্যাকেজ ইনস্টল করতে ব্যবহার করতে পারি /usrযা এর পরে sudoঅনুমতি ছাড়াই সাধারণত আমদানি করা হয় python। এমনকি আমি ব্যবহার sudo condaকরার pipচেয়ে sudo pip uninstall pipবা একটি ভাঙ্গা ঠিক করতাম sudo pip --upgrade install pip

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.