pip প্যাকেজ ইনস্টলার কমান্ড লাইন থেকে চালাতে হয়। আপনি যদি পাইথন ইন্টারপ্রেটার বা একটি পাইথন প্রোগ্রাম থেকে প্যাকেজ ইনস্টল করার চেষ্টা করেন, তবে আপনি SyntaxError: invalid syntax এররটি পাবেন।
এই গাইডে, আমরা pip install invalid syntax এররটির কারণ এবং এর অর্থ আলোচনা করব। আমরা এই এররটির একটি উদাহরণে আলোচনা করব যাতে আপনি আপনার কোডে এটি কীভাবে ঠিক করবেন তা শিখতে পারেন।
pip install invalid syntax
পাইথন pip একটি প্যাকেজ ইনস্টলার। pip টুল আপনাকে পাইথন প্যাকেজ ইন্ডেক্স থেকে প্যাকেজ ডাউনলোড এবং ইনস্টল করতে দেয়, যেখানে হাজার হাজার লাইব্রেরি উপলব্ধ যেগুলোর সাথে আপনি আপনার কোডে কাজ করতে পারেন।
pip টুল একটি কমান্ড লাইন interface হিসেবে চলে। pip আপনার পাইথন ইনস্টলেশন থেকে পৃথক। কারণ pip একটি ইনস্টলার, কোড এক্সিকিউট করার টুল নয়।
যদি এই টুলগুলো বান্ডেল করা হতো, তবে ডেভেলপারদের জন্য প্যাকেজ ইনস্টল করা আরও বিভ্রান্তিকর হতো কারণ পাইথন প্রোগ্রাম শুরু করার জন্য ব্যবহৃত সিনট্যাক্স মডিউল ইনস্টল করার জন্যও প্রযোজ্য হতো।
এই আচরণ প্রোগ্রামিং এনভায়রনমেন্টে সাধারণ। Node.js প্যাকেজ ইনস্টল করতে npm-র উপর নির্ভর করে। Node.js ব্যবহার করে প্রোগ্রাম চালাতে, আপনাকে node কমান্ড ব্যবহার করতে হয়।
একটি উদাহরণ পরিস্থিতি
আমরা একটি ডেভেলপমেন্ট এনভায়রনমেন্টে Beautiful Soup 4 লাইব্রেরি (bs4) সেট আপ করব। এই লাইব্রেরি আপনাকে একটি ওয়েব পেজ স্ক্র্যাপ করতে এবং নির্দিষ্ট ডেটা বের করতে দেয়।
শুরুতে, আসুন একটি পাইথন ৩ শেল খুলি। এই শেলে, আমরা আমাদের প্রোজেক্টের সारा কাজ করব:
python3
একটি ইন্টারেক্টিভ শেল খোলা হবে যেখানে আমরা আমাদের পাইথন কোড লিখতে পারি:
Python 3.8.5 (v3.8.5:580fbb018f, Jul 20 2020, 12:11:27) [Clang 6.0 (clang-600.0.57)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>>
পরবর্তীতে, আসুন আমাদের কোডে bs4 লাইব্রেরি ইম্পোর্ট করি। আমাদের প্রোগ্রাম বা শেলে রেফারেন্স করার আগে আমাদের যেকোনো এক্সটার্নাল লাইব্রেরি ইম্পোর্ট করতে হবে। bs4 প্যাকেজ ইম্পোর্ট করার জন্য আমরা যে কমান্ডটি ব্যবহার করব:
>>> from bs4 import BeautifulSoup Traceback (most recent call last): File "", line 1, in ModuleNotFoundError: No module named 'bs4'
আমাদের কোড একটি ModuleNotFoundError ফেরত দেয় যখন আমরা আমাদের প্যাকেজ ইম্পোর্ট করার চেষ্টা করি। এর মানে আমরা আমাদের প্রোগ্রাম লিখতে চালু রাখতে পারি না। পাইথন আমাদের প্রোগ্রাম লিখতে দরকার প্যাকেজ মডিউলগুলো লোকেট করতে পারছে না। আসুন bs4 লাইব্রেরি ইনস্টল করে এই এররটি ফিক্স করি:
>>> pip install bs4
এই কমান্ডের ফলে আরেকটি এরর দেখা দেয়:
File "", line 1 pip3 install bs4 ^ SyntaxError: invalid syntax
দेखতে হচ্ছে আমরা পাইথন শেল থেকে pip3 কমান্ড ব্যবহার করে bs4 ইনস্টল করতে পারছি না। pip3 হলো পাইথন ৩ প্যাকেজের জন্য প্যাকেজ ইনস্টলার।
সমাধান
আমরা পাইথন ইন্টারপ্রেটার থেকে bs4 প্যাকেজ ইনস্টল করার চেষ্টা করেছি।
আপনি বুঝতে পারেন কারণ আমরা python3 কমান্ড ব্যবহার করে পাইথন ৩ খুলেছি এবং তারপর pip3 install কমান্ড এক্সিকিউট করেছি।
পাইথন pip install invalid syntax এরর ফেরত দেয় কারণ pip পাইথনে একটি কীওয়ার্ড নয়। pip একটি কমান্ড লাইন টুল যা একটি কমান্ড লাইন শেল থেকে চালাতে হয়।
এই এররটি ফিক্স করতে, আমাদের প্রথমে আমাদের পাইথন শেল থেকে বের হতে হবে:
>>> exit()
exit() কমান্ড পাইথনকে খোলা ইন্টারপ্রেটার বন্ধ করতে বলে। পরবর্তীতে, আমরা কমান্ড প্রম্পট থেকে bs4 ইনস্টল করতে পারি:
pip3 install bs4
এই কমান্ড pip লাইব্রেরি আমাদের সিস্টেমে ইনস্টল করবে। একবার এই কমান্ড এক্সিকিউট হলে, আমরা একটি নতুন পাইথন শেল খুলতে পারি:
python3
আমাদের নতুন শেলে bs4 লাইব্রেরি এক্সেস থাকা উচিত। আমরা bs4 আমাদের কোডে ইম্পোর্ট করে এটি টেস্ট করতে পারি:
>>> from bs4 import BeautifulSoup >>>
কোনো এরর দেখা দেয় না। এর মানে ইম্পোর্ট সফল হয়েছে। এখন আমরা আমাদের প্রোগ্রামে bs4 ব্যবহার করতে পারি।
উপসংহার
pip install invalid syntax এররটি তখন দেখা দেয় যখন আপনি ইন্টারপ্রেটার থেকে একটি পাইথন প্যাকেজ ইনস্টল করার চেষ্টা করেন। এই এররটি সমাধান করতে, আপনার ইন্টারপ্রেটার থেকে বের হোন এবং pip install কমান্ডটি একটি কমান্ড লাইন শেল থেকে রান করুন।
এখন আপনার কাছে এই এররটি একজন প্রফেশনাল কোডারের মতো সমাধান করার দক্ষতা আছে!