পরিবেশের ভেরিয়েবলের মাধ্যমে বা আপনাকে কখনই সরাসরি পাথটি পরিবর্তন করতে হবে না sys.path
। আপনি ওএস (প্রাক্তন apt-get
) ব্যবহার করুন বা pip
ভার্চুয়ালনেভে, প্যাকেজগুলি ইতিমধ্যে পথে অবস্থিত কোনও স্থানে ইনস্টল করা হবে।
আপনার উদাহরণস্বরূপ, জিএনইউ রেডিওটি পাইথন 2 এর মান স্থিতিতে সিস্টেমে ইনস্টল করা আছে site-packages
, যা ইতিমধ্যে পথে রয়েছে। সঠিক দোভাষীর কাছে পাইচার্মকে নির্দেশ করা যথেষ্ট; যদি এটি না হয় তবে অন্য কিছু ভুল আছে যা আপাত নয়। এটি হতে পারে যে /usr/bin/python
জিএনইউ রেডিও ইনস্টল করে একই দোভাষীকে ইঙ্গিত দেয় না; python2.7
বাইনারি নির্দিষ্ট করে নির্দেশ করার চেষ্টা করুন । অথবা, পাইকার্ম প্যাকেজ সনাক্তকরণে কিছুটা খারাপ ব্যবহার করত; File > Invalidate Caches > Invalidate and Restart
এটি আবার ত্যাগ করতে বলবে।
এই উত্তরে আপনাকে কীভাবে একটি প্রকল্পের পরিবেশ সেট আপ করতে হবে, বিভিন্ন পরিস্থিতিতে প্যাকেজ ইনস্টল করতে হবে এবং পাইচার্ম কনফিগার করা উচিত cover আমি পাইথন প্যাকেজিং ব্যবহারকারী নির্দেশকে একাধিকবার উল্লেখ করি , একই গ্রুপ দ্বারা লিখিত যা অফিসিয়াল পাইথন প্যাকেজিং সরঞ্জাম বজায় রাখে।
পাইথন অ্যাপ্লিকেশন বিকাশের সঠিক উপায়টি হ'ল ভার্চুয়ালেনভের সাথে। সিস্টেম বা অন্যান্য প্রকল্পগুলিকে প্রভাবিত না করে প্যাকেজ এবং সংস্করণ ইনস্টল করা হয়। পাইচার্মের একটি ভার্চুয়ালেনভ তৈরি করতে এবং প্যাকেজ ইনস্টল করার জন্য একটি অন্তর্নির্মিত ইন্টারফেস রয়েছে। অথবা আপনি এটি কমান্ড লাইন থেকে তৈরি করতে পারেন এবং তারপরে পাইচার্মটি নির্দেশ করতে পারেন।
$ cd MyProject
$ python2 -m virtualenv env
$ . env/bin/activate
$ pip install -U pip setuptools # get the latest versions
$ pip install flask # install other packages
আপনার পাইচার্ম প্রকল্পে যান File > Settings > Project > Project Interpreter
। যদি আপনি virtualenvwrapper
এনভিটি তৈরি করতে পাইকার্ম ব্যবহার করেন বা এটি ব্যবহার করেন তবে এটি মেনুতে প্রদর্শিত হবে। যদি তা না হয় তবে গিয়ারটি ক্লিক করুন, চয়ন করুন Add Local
এবং এনভির মধ্যে পাইথন বাইনারিটি সনাক্ত করুন। পাইচার্ম নির্বাচিত এনভির সমস্ত প্যাকেজ প্রদর্শন করবে।
কিছু ক্ষেত্রে যেমন জিএনইউ রেডিওর সাথে ইনস্টল করার জন্য কোনও প্যাকেজ নেই pip
, বাকী জিএনইউ রেডিও ইনস্টল করার সময় প্যাকেজটি সিস্টেম-ওয়াইড ইনস্টল করা হয়েছিল (প্রাক্তন apt-get install gnuradio
)। এই ক্ষেত্রে, আপনার এখনও একটি ভার্চুয়ালেনভ ব্যবহার করা উচিত তবে আপনাকে এটি এই সিস্টেম প্যাকেজ সম্পর্কে সচেতন করতে হবে।
$ python2 -m virtualenv --system-site-packages env
দুর্ভাগ্যক্রমে এটি কিছুটা অগোছালো দেখাচ্ছে, কারণ সমস্ত সিস্টেম প্যাকেজগুলি এখন আপনার এনভিতে উপস্থিত হবে, তবে সেগুলি কেবলমাত্র লিঙ্ক, আপনি এখনও সিস্টেমটিকে প্রভাবিত না করে নিরাপদে প্যাকেজ ইনস্টল বা আপগ্রেড করতে পারেন।
কিছু ক্ষেত্রে, আপনি বিকাশ করছেন এমন একাধিক স্থানীয় প্যাকেজ থাকবে এবং একটি প্রকল্প অন্য প্যাকেজটি ব্যবহার করতে চাইবে। এক্ষেত্রে আপনি ভাবতে পারেন আপনাকে অন্য প্রকল্পের পথে স্থানীয় প্যাকেজটি যুক্ত করতে হবে, তবে এটি এমন নয়। আপনার প্যাকেজটি বিকাশ মোডে ইনস্টল করা উচিত । এই সমস্ত প্রয়োজন আপনার প্যাকেজটিতে একটি setup.py
ফাইল যুক্ত করছে , যা প্যাকেজটি যথাযথভাবে বিতরণ এবং মোতায়েনের জন্য যাইহোক প্রয়োজন হবে।
setup.py
আপনার প্রথম প্রকল্পের জন্য ন্যূনতম :
from setuptools import setup, find_packages
setup(
name='mypackage',
version='0.1',
packages=find_packages(),
)
তারপরে এটি আপনার দ্বিতীয় প্রকল্পের এনভিটিতে ইনস্টল করুন:
$ pip install -e /path/to/first/project