ত্রুটি ছাড়াই শুধুমাত্র "কনডা ইনস্টল - আইস - ফাইল ফাইলগুলি.টেক্সট" ব্যবহার করে উপলভ্য প্যাকেজগুলি ইনস্টল করুন


96

প্রয়োজনীয়তাগুলিতে প্যাকেজ ইনস্টল করার সময় নিম্নলিখিত কমান্ডের সাহায্যে কনডা ব্যবহার করুন xt

conda install --yes --file requirements.txt

প্রয়োজনীয়তার মধ্যে একটি প্যাকেজ.txt উপলভ্য না হলে এটি "প্যাকেজ ত্রুটি নেই" যেমন নীচে দেখানো হয়েছে:

অ্যানাকোন্ডা ক্লাউড এপিআই সাইট https://api.anaconda.org ব্যবহার করে

প্যাকেজ মেটাডেটা আনছে: ....

ত্রুটি: বর্তমান লিনাক্স -৪ channels চ্যানেলগুলিতে কোনও প্যাকেজ পাওয়া যায় নি: নিমফা == ১.২.৩

আপনি এই প্যাকেজটির সাথে anaconda.org এ অনুসন্ধান করতে পারেন

anaconda search -t conda nimfa ==1.2.3

ত্রুটি নিক্ষেপ করার পরিবর্তে, এই আচরণটি কী এমন পরিবর্তন করা সম্ভব যে এটি প্রয়োজনীয় সমস্ত প্যাকেজ ইনস্টল করে দেয়? টেক্সট এবং যা উপলভ্য নয় তাদের জন্য একটি সতর্কতা নিক্ষেপ করে?

আমি এটি চাই কারণ, প্যাকেজ নিমফ যা ত্রুটিটি বলে যে পাওয়া যায় না, এটি পাইপ ইনস্টল করা যেতে পারে। সুতরাং আমি যদি conda install --yes --file requirements.txtঅনুপলব্ধ প্যাকেজগুলির জন্য কেবল একটি সতর্কতা ছুঁড়ে ফেলার আচরণটি পরিবর্তন করতে পারি তবে pip install -r requirments.txt.travis.yml কমান্ডের সাহায্যে আমি এটি অনুসরণ করতে পারি তাই ট্র্যাভিসিসিআই যেখানেই এটি উপলব্ধ রয়েছে সেখান থেকে এটি ইনস্টল করার চেষ্টা করে।

উত্তর:


170

আমি কেবল ফাইলের লাইনগুলিতে পুনরাবৃত্তি শেষ করেছি

$ while read requirement; do conda install --yes $requirement; done < requirements.txt

সম্পাদনা করুন : যদি আপনি পাইপ ব্যবহার করে কোনও প্যাকেজ কনডোর মাধ্যমে না পাওয়া যায় তবে এটি ব্যবহার করুন:

$ while read requirement; do conda install --yes $requirement || pip install $requirement; done < requirements.txt

সম্পাদনা করুন : আপনি যদি উইন্ডোজ ব্যবহার করেন (ক্রেডিট @ ক্লেতে যায় ):

$ FOR /F "delims=~" %f in (requirements.txt) DO conda install --yes "%f" || pip install "%f"


4
এটির জন্য ধন্যবাদ, এটি যে কেউ ব্যবহার করছে তার জন্য ছোট ইঙ্গিত, আপনার প্রয়োজনীয়তাগুলি নিশ্চিত করুন tটিএসটি একটি নতুন লাইনের সাথে শেষ হয়েছে, যাতে চূড়ান্ত প্যাকেজটি পড়ে
t টেক্সটটি

4
পুনরাবৃত্তির সময় pip installপ্যাকেজগুলি স্বয়ংক্রিয়ভাবে ব্যবহার conda installকরার জন্য কী নেই?
পিটারবি

4
@ ডিলিউশনএক্স, আমি উত্তরটি প্রসারিত করেছি।
হফম্যান পর্যন্ত

11
উইন্ডোজ মেশিনে টিলহফম্যানের সমাধান: FOR /F "delims=~" %f in (requirements.txt) DO conda install --yes "%f" || pip install "%f" খুব ভাল কাজ করে। ধন্যবাদ!
ক্লে

4
আপনি যদি প্রয়োজনীয় ফাইলগুলিতে মন্তব্য করেন তবে পাইপটি ভারবসিলভাবে অভিযোগ করে (ক্ষতিকারক হলে বিরক্তিকর)। ব্যাশ ওয়ান-লাইনারের একটি প্রকরণ যা মন্তব্যগুলিকে উপেক্ষা করে:while read req; do if [[ $req != "#"* ]]; then conda install --yes $requirement || pip install $requirement; fi; done < requirements.txt
ড্রেভিকো


1

যারা খুঁজছেন তাদের জন্য, আমি এটি ফিশ শেলের জন্য @TillHoffmann এর সমাধান হিসাবে ব্যবহার করেছি:

$ while read requirement; conda install --yes $requirement; end < requirements.txt

এবং

$ while read requirement; conda install --yes $requirement;or pip install $requirement; end < requirements.txt

1

পিবিএমএসের উত্তরটি এটি করার সঠিক উপায়, ধরে নেওয়া আপনার অনুলিপি করার কোনও বিদ্যমান পরিবেশ রয়েছে। তালিকাভুক্ত হিসাবে কনডা উভয় কনডা প্যাকেজ এবং পাইপ প্যাকেজ ইনস্টল করতে সক্ষম environment.yml। আমি আরও বিস্তারিতভাবে পুরো প্রক্রিয়াটি নথিভুক্ত করতে চেয়েছিলাম। মনে রাখবেন যে আমি ফোল্ডার-ভিত্তিক পরিবেশ ব্যবহার করছি, এজন্য আমি --prefix [path to environment folder]বেশিরভাগ কমান্ডে যুক্ত করেছি।

বলুন যে আপনি বিদ্যমান প্রকল্পের জন্য envবর্তমান ফোল্ডারে ডাকা একটি ফোল্ডারে একটি পরিবেশ স্থাপন করেছেন:

conda create --prefix ./env

আপনি environment.ymlএই প্রকল্পের পরিবেশ এর জন্য উত্পন্ন করতে চাই :

conda env export --prefix ./env > environment.yml

আপনি environment.ymlসেখানে অনুলিপি করে অন্য কোনও ফোল্ডারের মধ্যে একটি নতুন পরিবেশ তৈরি করতে চান এবং তারপরে এটিকে চালনা করে:

conda env create --prefix ./env --file environment.yml

আপনি environment.ymlআবার environment.ymlসেখানে অনুলিপি করে এবং সেখান থেকে এটি চালিয়ে ইতিমধ্যে বিদ্যমান পরিবেশটি মিলিয়ে নিতে চাইবেন :

conda env update --prefix ./env --file environment.yml --prune

সক্রিয় প্রশ্নে পরিবেশের সাথে, আপনি এর প্যাকেজগুলির স্থিতিটি যাচাই করতে চাইবেন:

conda list

এই কমান্ডটি কী মুদ্রণ করতে পারে তার একটি সংক্ষিপ্ত সংস্করণ (নোটটি পাইপ প্যাকেজগুলি চিহ্নিত রয়েছে pypi):

# Name                    Version                   Build  Channel
pip                       19.2.2                   py37_0
python                    3.7.4                h5263a28_0
numpy                     1.16.4           py37h19fb1c0_0
pandas                    0.25.1           py37ha925a31_0
pyodbc                    4.0.27           py37ha925a31_0
ibm-db                    3.0.1                    pypi_0    pypi
ibm-db-sa                 0.3.5                    pypi_0    pypi

শেষ অবধি, এটি দেখতে কেমন environment.ymlহতে পারে তার একটি সংক্ষিপ্ত সংস্করণ (নোট করুন যে পাইপ প্যাকেজগুলি তাদের নিজস্ব বিভাগে তালিকাভুক্ত করা হয়েছে):

dependencies:
  - pip=19.2.2=py37_0
  - python=3.7.4=h5263a28_0
  - numpy=1.16.4=py37h19fb1c0_0
  - pandas=0.25.1=py37ha925a31_0
  - pyodbc=4.0.27=py37ha925a31_0
  - pip:
    - ibm-db==3.0.1
    - ibm-db-sa==0.3.5

সচেতন থাকুন যে কন্ডা এবং পাইপ একসাথে ব্যবহার করা কিছুটা জ্বলন্ত কারণ হতে পারে কারণ তারা অজান্তেই একে অপরের নির্ভরতা দূরে সরিয়ে দিতে পারে। আপনি প্রথমে আপনার সমস্ত কন্ডা প্যাকেজ ইনস্টল করার কথা এবং তারপরে আপনার সমস্ত পাইপ প্যাকেজগুলি পরে দুজনের মধ্যে পরিবর্তনের পরিবর্তে ইনস্টল করার কথা। যদি আপনার পরিবেশটি ভেঙে যায় তবে সরকারী সুপারিশটি হ'ল এটি মুছে ফেলা এবং পুনরায় তৈরি করা (আপনার environment.ymlফাইল থেকে )। আরও তথ্যের জন্য এই গাইডটি দেখুন:

https://www.anaconda.com/used-pip-in-a-conda-en वातावरण/

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