পাইপ বা পাইপ 3 পাইথন 3 এর জন্য প্যাকেজ ইনস্টল করতে চান?


120

ওএস এক্স এল ক্যাপ্টেনের সাথে আমার একটি ম্যাকবুক রয়েছে। আমি মনে করি এটি এর Python 2.7উপর ইনস্টল করা আছে। তবে, আমি ইনস্টল করেছি Python 3.5। আমি যখন ব্যবহার শুরু করলাম তখন আমি Python 3পড়েছিলাম যে আমি যদি প্যাকেজ ইনস্টল করতে চাই তবে আমার টাইপ করা উচিত:

pip3 install some_package

যাইহোক, এখন আমি যখন ব্যবহার

pip install some_package

আমি জন্য some_packageইনস্টল করা Python 3। মানে আমি এটিকে আমদানি করতে এবং সমস্যা ছাড়াই এটি ব্যবহার করতে পারি। অধিকন্তু, যখন আমি শুধু টাইপ pip3মধ্যে Terminal, আমি ব্যবহার সম্পর্কে এই বার্তাটি করেছেন:

Usage:   
  pip <command> [options]

আমি টাইপ করার সময় আমি একই বার্তাটি পাই pip

এর অর্থ কি প্রিভিও সংস্করণগুলিতে জিনিসগুলি আলাদা ছিল এবং এখন pipএবং আদান-প্রদানের pip3জন্য ব্যবহার করা যেতে পারে? যদি তা হয়, এবং তর্কের খাতিরে, আমি কীভাবে এর Python 2পরিবর্তে প্যাকেজ ইনস্টল করতে পারি Python 3?

উত্তর:


74

আপনার pipসাথে একই এক্সিকিউটেবল ফাইল পাথের একটি নরম লিঙ্ক pip3। আপনার pipএবং pip3আসল পাথগুলি কোথায় তা পরীক্ষা করতে নীচের আদেশগুলি ব্যবহার করতে পারেন :

$ ls -l `which pip`
$ ls -l `which pip3`

আরও বিশদ জানতে আপনি নীচের আদেশগুলি ব্যবহার করতে পারেন:

$ pip show pip
$ pip3 show pip

যখন আমরা পাইথনের বিভিন্ন সংস্করণ ইনস্টল করি তখন আমরা এর সাথে নরম লিঙ্কগুলি তৈরি করতে পারি

  • কিছু সংস্করণে ডিফল্ট পাইপ সেট করুন।
  • বিভিন্ন সংস্করণের জন্য বিভিন্ন লিঙ্ক তৈরি করুন।

এটা তোলে সঙ্গে একই অবস্থা python, python2,python3

এটি বিভিন্ন ক্ষেত্রে কীভাবে ঘটে তা সম্পর্কে আগ্রহী হলে নীচের আরও তথ্য:


1
আমি মনে করি এটি ভুল। আমার পাইপ 3 এটিকে নিজের আউটপুটটিতে কেবল পাইপ বলে, স্থির, সরল পাইপটি আমার সিস্টেমে পাইথন 2 প্যাকেজ ইনস্টল করে। আমি মনে করি stackoverflow.com/a/40832677/188108 সঠিক, কমপক্ষে এটি আমার পর্যবেক্ষণগুলির সাথে একমত।
টর্স্টেন ব্রোঞ্জার

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

1
আমি ওটা সন্দেহ করেছি. আমার কোনও ম্যাক নেই তবে উবুন্টু স্বাদগুলিতে আমি যা পরীক্ষা করেছি, পাইপের রূপগুলি প্রতিলিপি নয়। পরিবর্তে, তারা ক্ষুদ্র পাইথন স্ক্রিপ্টগুলি কেবল শেবাং লাইনেই পৃথক হয়।
টর্স্টেন ব্রোঞ্জার

হ্যাঁ, এটাই আমার অর্থ পরিবেশ এবং পরিবর্তনের জন্য আপনি পাইথন ইনস্টল করার পদ্ধতি (ব্রিউ, অ্যাপ্ট, পাইভ, ম্যানুয়ালি সংকলন ইত্যাদি) এবং প্রশ্নকারীর অবস্থার কারণ এটি নরম লিঙ্ক, এবং আমরা কারণটি যাচাই করতে ls -lএবং ব্যবহার pip showকরতে পারি । এবং অবশ্যই, এই উত্তরটি তার প্রশ্নের উত্তর দেওয়া।
সিএসজে

আমি মনে করি না যে প্রশ্নকারীর কম্পিউটারে সিমলিংক ছিল। পাইপ কখনও এইভাবে কাজ করে / কাজ করে এমন কোনও রেফারেন্স পাই না।
টর্স্টেন ব্রোঞ্জার

26

আপনার যদি পাইথন ২.x থাকে এবং তারপরে পাইথন 3 ইনস্টল করা থাকে তবে আপনার পাইপটি পাইপ 3-এ নির্দেশ করবে। আপনি pip --versionযা টাইপ করে যা যা একই হতে পারে তা যাচাই করতে পারেন pip3 --version

আপনার সিস্টেমে এখন পিপ, পিপ 2 এবং পাইপ 3 রয়েছে

আপনি চাইলে পিপ 3 পরিবর্তে পিপ 2 তে পিপ পরিবর্তন করতে পারেন।


1
আপনি কীভাবে এটি পরিবর্তন করবেন
আহ্নবিজকড

3
@ অাহ্নবিজক্যাড সবচেয়ে সহজ উপায় হ'ল এর মতো একটি উপাত্ত সংজ্ঞা দেওয়া: ওরফে পিপ = "পিপ 3"
আপাদানা

2
আমি এটি করেছি, তবে আমার পাইপ 3 ভি 9 ছিল যখন পাইপটি ভি 10 ছিল, তাই আমি টাইপ করেছি pip3 install --upgrade pipএবং এটি উভয়ই
ভি 10

2
এই উত্তরটি ভুল। পিপ পাইপ 3 নির্দেশ করবে না। পাইপ পাইথন 2 প্যাকেজ ইনস্টল করবে এবং পাইপ 3 পাইথন 3 প্যাকেজ ইনস্টল করবে। 18.10 এ লুবুন্টুতে পরীক্ষা করা হয়েছে।
টর্স্টেন ব্রোঞ্জার

@ টর্স্টেনব্রোঞ্জার আপনার পরিবেশে অজগর স্থাপনের আদেশ কী ছিল?
আপাদানা

14

আপনি ইনস্টল করার পরে python3, pip3ইনস্টল করা হয়। এবং যদি আপনার আর একটি পাইথন ইনস্টলেশন না থাকে (পাইথন 2.7 এর মতো) তবে একটি লিঙ্ক তৈরি করা হবে যা নির্দেশ pipকরবে pip3

সুতরাং pipকরতে একটি লিঙ্কpip3 যদি ইনস্টল পাইথন অন্য কোন সংস্করণ (python3 ছাড়া) হয়। pipসাধারণত প্রথম ইনস্টলেশন নির্দেশ করে।



6

উদাহরণ দিয়ে:

pip --version
  pip 19.0.3 from /usr/lib/python3.7/site-packages/pip (python 3.7)

pip3 --version
  pip 19.0.3 from /usr/lib/python3.7/site-packages/pip (python 3.7)

python --version
  Python 3.7.3

which python
  /usr/bin/python

ls -l '/usr/bin/python'
  lrwxrwxrwx 1 root root 7 Mar 26 14:43 /usr/bin/python -> python3

which python3
  /usr/bin/python3

ls -l /usr/bin/python3
  lrwxrwxrwx 1 root root 9 Mar 26 14:43 /usr/bin/python3 -> python3.7

ls -l /usr/bin/python3.7
  -rwxr-xr-x 2 root root 14120 Mar 26 14:43 /usr/bin/python3.7

সুতরাং, আমার আমার ডিফল্ট সিস্টেম পাইথন (পাইথন 3.7.3), pip হয় pip3


5

আমি মনে করি pip, pip2এবং pip3একই নির্বাহযোগ্য ফাইল পাথের নরম লিঙ্ক নয়। আমার লিনাক্স টার্মিনালে এই আদেশগুলি এবং ফলাফলগুলি নোট করুন:

mrz@mrz-pc ~ $ ls -l `which pip`
-rwxr-xr-x 1 root root 292 Nov 10  2016 /usr/bin/pip
mrz@mrz-pc ~ $ ls -l `which pip2`
-rwxr-xr-x 1 root root 283 Nov 10  2016 /usr/bin/pip2
mrz@mrz-pc ~ $ ls -l `which pip3`
-rwxr-xr-x 1 root root 293 Nov 10  2016 /usr/bin/pip3
mrz@mrz-pc ~ $ pip -V
pip 9.0.1 from /home/mrz/.local/lib/python2.7/site-packages (python 2.7)
mrz@mrz-pc ~ $ pip2 -V
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)
mrz@mrz-pc ~ $ pip3 -V
pip 9.0.1 from /home/mrz/.local/lib/python3.5/site-packages (python 3.5)

আপনি দেখতে পাচ্ছেন যে এগুলি বিভিন্ন পথে রয়েছে।

পাইপ 3 সর্বদা পাইথন 3 পরিবেশে কাজ করে, যেমন পাইপ 2 পাইথন 2 এর সাথে করে। পিপ যে কোনও পরিবেশের প্রসঙ্গে উপযুক্ত ope উদাহরণস্বরূপ আপনি যদি পাইথন 3 ভেন্টে থাকেন তবে পাইপ পাইথন 3 পরিবেশে কাজ করবে।


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

3

যদি আপনি পাইথন ২.7 ইনস্টল করেন তবে আমার ধারণা আপনি পাইথন ২ এর মতো বিশেষত প্যাকেজগুলি ব্যবহার করতে pip2এবং pip2.7ইনস্টল করতে পারেন

pip2 install some_pacakge

অথবা

pip2.7 install some_package

এবং আপনি পাইথন 3 এর জন্য বিশেষভাবে প্যাকগুলি ব্যবহার করতে pip3বা pip3.5ইনস্টল করতে পারেন ।


1

আমার উইন্ডোজ উদাহরণে - এবং আমি আমার পরিবেশটি পুরোপুরি বুঝতে পারি না - পিগ 3 ব্যবহার করে কাগল-ক্লাইপ প্যাকেজটি ইনস্টল করা হয়েছিল - যেখানে পাইপটি হয়নি। আমি একটি কনডা পরিবেশে কাজ করছিলাম এবং পরিবেশগুলি অন্যরকম বলে মনে হচ্ছে।

(ফাস্টাই) সি: \ ব্যবহারকারীগণ \ পুনর্নির্মাণ \ ডাউনলোডগুলি \ ফাস্ট.ai \ গভীরতরকরণ 1 \ nbs> পিপ - রূপান্তর

সি থেকে পাইপ 9.0.1: \ প্রোগ্রামডাটা \ অ্যানাকোন্ডা 3 \ এনভিএস \ ফাস্টাই \ lib \ সাইট-প্যাকেজ (পাইথন 3.6)

(ফাস্টাই) সি: \ ব্যবহারকারীগণ \ পুনর্নির্মাণ \ ডাউনলোডগুলি \ ফাস্ট.ai \ গভীরতরকরণ 1 \ nbs> পিপ 3 - রূপান্তর

সিপ থেকে 9.0.1 পিপ: \ ব্যবহারকারীরা রেড্যাক্ট \ অ্যাপডাটা \ স্থানীয় \ প্রোগ্রামগুলি \ পাইথন \ পাইথন 36 \ লিবিব \ সাইট-প্যাকেজগুলি (পাইথন 3.6)


0

স্যামপ্যাথ / ভেন্টে একটি অ্যাক্টিভেটেড পাইথন ৩.6 ভার্চুয়ালেনভ দেওয়া , নিম্নলিখিত উপকরণগুলি ম্যাকোস সিয়েরার বিভিন্ন সমস্যা সমাধান করেছে যেখানে অ্যাপল এর ২.7 পাইথনের দিকে নির্দেশ করার জন্য পিপ জোর দিয়েছিল।

alias pip='python somepath/venv/lib/python3.6/site-packages/pip/__main__.py'

এটি যখন এত ভাল কাজ করল না sudo pipযেহেতু মূল ব্যবহারকারী আমার ওরফে বা ভার্চুয়ালেনভ সম্পর্কে কিছুই জানেন না, তাই এটি পরিচালনা করার জন্য আমাকে অতিরিক্ত অতিরিক্ত নামও যুক্ত করতে হয়েছিল। এটি একটি হ্যাক, তবে এটি কাজ করে এবং আমি জানি এটি কী করে:

alias sudopip='sudo somepath/venv/bin/python somepath/venv/lib/python3.6/site-packages/pip/__main__.py'

পটভূমি:

পাইপ 3 এর সাথে শুরু করার জন্য ( কমান্ডটি পাওয়া যায় নি ) উপস্থিত ছিল না এবং অ্যাপল পাইথন /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/pip দিয়ে which pipফিরে আসবে

পাইথন ৩.6 ম্যাকপোর্টের মাধ্যমে ইনস্টল করা হয়েছিল।

3.6 ভার্চুয়ালেনভ সক্রিয় হওয়ার পরে আমি যার সাথে কাজ করতে চেয়েছিলাম, which pythonফিরে আসবে স্যামপ্যাথ / ভেনভ / বিন / পাইথন

কোনওভাবে pip installসঠিক কাজটি করবে এবং আমার ভার্চুয়ালেনভকে আঘাত pip listকরবে তবে পাইথন ২.7 প্যাকেজগুলি ছড়িয়ে দেবে।

পাইথনের পক্ষে, এটি আমার প্রত্যাশার নীচে ব্যাটারি শুরু করছে বন্ধুর বন্ধুত্বের দিক থেকে।

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