উত্তর:
site-packagesহয় গন্তব্যের ডিরেক্টরি ম্যানুয়ালি নির্মিত পাইথন প্যাকেজ। আপনি যখন উত্স থেকে পাইথন প্যাকেজগুলি তৈরি এবং ইনস্টল করেন ( ডিস্টুয়েলগুলি ব্যবহার করে , সম্ভবত নির্বাহ করে python setup.py install), আপনি site-packagesডিফল্টরূপে ইনস্টলড মডিউলগুলি খুঁজে পাবেন ।
মানক অবস্থান রয়েছে:
prefix/lib/pythonX.Y/site-packagesexec-prefix/lib/pythonX.Y/site-packagesprefix\Lib\site-packages1 খাঁটি মানে মডিউলটি কেবল পাইথন কোড ব্যবহার করে। অ-খাঁটিতে সি / সি ++ কোডও থাকতে পারে।
site-packagesপাইথন অনুসন্ধানের পথের ডিফল্ট অংশ , সুতরাং সেখানে ইনস্টল হওয়া মডিউলগুলি পরে সহজেই আমদানি করা যায়।
lib64!
/usr/lib/python3.6?
আপনি যখন --userপাইপের সাহায্যে বিকল্প ব্যবহার করেন, প্যাকেজটি বিশ্বব্যাপী ফোল্ডারের পরিবর্তে ব্যবহারকারীর ফোল্ডারে ইনস্টল হয়ে যায় এবং অ্যাডমিন সুবিধার সাথে আপনার পিপ কমান্ডটি চালানোর প্রয়োজন হবে না।
ব্যবহারকারীর প্যাকেজ ফোল্ডারের অবস্থানটি ব্যবহার করে পাওয়া যাবে:
python -m site --user-site
এটি এমন কিছু মুদ্রণ করবে:
C:\Users\%USERNAME%\AppData\Roaming\Python\Python35\site-packages
আপনি যখন --userপাইপের সাহায্যে বিকল্প ব্যবহার করবেন না , প্যাকেজটি প্রদত্ত গ্লোবাল ফোল্ডারে ইনস্টল হয়ে যাবে:
python -c "import site; print(site.getsitepackages())"
এটি এমন কিছু মুদ্রণ করবে:
['C:\\Program Files\\Anaconda3', 'C:\\Program Files\\Anaconda3\\lib\\site-packages'
দ্রষ্টব্য: উপরে মুদ্রিত মানগুলি ডিফল্টর সাথে ইনস্টল করা অ্যানাকোন্ডা 4.x সহ উইন্ডোজ 10 এর জন্য।
সাইট-প্যাকেজগুলি ঠিক সেই জায়গা যেখানে পাইথন এটির মডিউল ইনস্টল করে।
"এটি সন্ধান" করার দরকার নেই, পাইথন নিজেই এটি কোথায় সন্ধান করতে পারে তা জানে, এই অবস্থানটি সর্বদা পাইথনপাথের (সিএস.পথ) অংশ।
প্রোগ্রামগতভাবে আপনি এটি এটি খুঁজে পেতে পারেন:
import sys
site_packages = next(p for p in sys.path if 'site-packages' in p)
print site_packages
'/Users/foo/.envs/env1/lib/python2.7/site-packages'
site-packagesএবং এটি বাড়বে StopIteration। উদাহরণস্বরূপ, দেবিয়ান (এবং উবুন্টু) dist-packagesতাদের বিতরণ করা মডিউলগুলি ইনস্টল করতে হবে।
/usr/local/lib/python3.6/site-packagesউবুন্টু উপর