> For the complete documentation index, see [llms.txt](https://rakibul-hassan.gitbook.io/mlbook-titanic-py/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://rakibul-hassan.gitbook.io/mlbook-titanic-py/python-and-environment.md).

# পাইথন এনভাইরনমেন্ট

## পর্ব: পাইথন এনভাইরনমেন্ট

## শুরর আগে

যেহেতু এবার আমরা সিদ্ধান্ত নিয়ে ফেলেছি যে আমরা পাইথন দিয়ে আমাদের মেশিন কে লার্ন করাবো মানে পাইথন দিয়ে আমরা মেশিন লার্নিং এর কোড করবো সেহেতু আমাদের এই মুহূর্তে কিছু কাজ সেরে ফেলতে হবে। আমাদের কম্পিউটারটিকে পাইথনে কোড করার উপযোগী করে তোলার জন্য তাতে পাইথন ডেভেলপলপমেন্ট এনভাইরনমেন্ট তৈরি করতে হবে। যারা লিনাক্স বা ম্যাক কম্পিউটার ব্যবহার করে থাকেন তাদের আসলে কোন কিছু করতে হবেনা কারন তাদের কম্পিউটারে ইতিমধ্যেই পাইথন ডেভেলপলপমেন্ট এনভাইরনমেন্ট তৈরি করা আছে। কিন্তু, যারা এইযে আমার মতন উইন্ডোজ ব্যবহার করেন তাদের কে একটু কষ্ট করতে হবে।

| এখানে আমি আপনাদেরকে একটা পরামর্শ দিতে চাই। পাইথন ডেভেলপলপমেন্ট এনভাইরনমেন্ট তৈরির জন্য আমি আপনাদেরকে এখন যে ধাপ গুলো বলব সাথে সাথে সেইগুলো প্রয়োগ না করে বরং আগে পুরা অধ্যায় টা একবার পড়ে ফেলুন আর তারপর কাজ করা শুরু করুন। কারন? কারন অধ্যায়ের শেষ প্যারাতে গেলেই বুঝতে পারবেন। |
| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

## পাইথন ডাউনলোড ও ইন্সটলেশন

প্রথমেই আমাদের পাইথন ডাউনলোড করে নিতে হবে “[https://www.python.org/downloads/](https://www.gitbook.com/book/raqueeb/mlbook-titanic-py/edit#)” এখান থেকে। বর্তমানে পাইথনের যে দুইটি ভার্সন পাইথন-২.৭.x এবং পাইথন-৩.x আছে সেটা সম্পর্কে আমরা আগেই জেনেছি। আমি আপনাদের সুপারিশ করব পাইথন ৩.x ডাউনলোড করতে (আফটার অল, যে কোন কিছুর নতুন ভার্সন ব্যবহার করতে কে না পছন্দ করে!)। আরো একটা জিনিস মাথায় রাখতে হবে ডাউনলোডের সময়, আপনার কম্পিউটার ৩২ বিট নাকি ৬৪ বিট এর।

তো আপনার কম্পিউটার এর বিট অনুসারে ডাউনলোড করে ফেলুন পাইথন।

![](/files/-LggvzIdnjiXveBSwg4b)এবার ইন্সটলেশনের পালা। ইন্সটলার মানে আমরা যেটা ডাউনলোড করলাম সেইটাকে রান করুন। আপনাকে দুইটি অপশন দেওয়া হবে, কাস্টমাইজ ইন্সটলেশন টা বাছাই করুন আর তারপর নেক্সট এ ক্লিক করুন। এরপরের উইন্ডোর অপশনাল ফিচারস এর সবগুল চেকবক্স এ টিক দিয়ে আবার নেক্সট চাপুন। এরপরের উইন্ডোর অ্যাডভান্সড অপশনস এ আপনি যেখানে মানে আপনার কম্পিউটার এর যে ডিরেক্টরিতে আপনার পাইথন ইন্সটল করতে চান সেই লোকেশন টা সেট করে দিন। তারপর ইন্সটল চাপুন, আর ব্যাস হয়ে গেলো আপনার পাইথন ইন্সটল। পাইথন ইন্সটল হয়েছে কিনা সেইটা এবার চেক করার পালা। খুলে ফেলুন আপনার কমান্ড প্রম্পট আর লিখুন পাইথন। আপনাকে আপনার পাইথনের ভার্সন দেখাবে। না দেখালেও ভয় নাই, আপনার পাইথন ইন্সটল হয়েছে, আপনি যে ডিরেক্টরিতে পাইথন ইন্সটল করেছেন কমান্ড প্রম্পট এ সেই ডিরেক্টরিতে গিয়ে পাইথন লিখলেই চলে আসবে আপনার পাইথনের ভার্সন এবং তার নিচে থাকবে তিনটা অ্যারো চিহ্ন >>> যেখানেই মূলত আপনি আপনার পাইথনের কোড গুলো লিখবেন। কমান্ড প্রম্পট এ বার বার ডিরেক্টরি চেঞ্জ না করে যেকোনো খান থেকেই পাইথন শুরু করতে করতে চাইলে কম্পিউটার এর এনভাইরনমেন্ট ভেরিইয়েবলে পাইথনের ডিরেক্টরির পাথ সেট করে দিতে হবে।

![](https://lh3.googleusercontent.com/W-7VEdQvZlDJIYu4web4t-gCFXl3eIfrsPO4cZ1pixm0eJJopXJcPFF6soHROxuirpTxISXVPT4qVacFQIRnrAmNPhJL-RyKbz2S_EeupvGIcWOm43vea-nRH-p0ei6H-aB3Slj7)

## পাইথনের প্যাকেজ ইন্সটলেশন

পাইথনে কাজ করতে গিয়ে আমাদের প্রায়শই পাইথনের বেশ কিছু প্যাকেজ এর ব্যবহার করতে হবে যেমন ম্যাশিন লার্নিং এর জন্য পাইথনের রয়েছে “scikit-learn” প্যাকেজ। এই প্যাকেজ গুলোকে আমারা পাইথনের স্ক্রিপ্টস এর ডিরেক্টরি হিসেবে ভাবতে পারি। আর প্রতিটা স্ক্রিপ্টসই হচ্ছে এক একটা মডিউল যার মধ্যে থাকে বেশকিছু ফাংশন, মেথড এবং ডাটা স্ট্রাকচার। তার মানে দাঁড়ালো প্যাকেজ এর মধ্যে থাকে মডিউল (থাকতে পারে এক বা একাধিক সংখ্যক)। এই ফাংশন, মেথড কিম্বা ডাটা স্ট্রাকচারগুলো যদি আমরা ব্যবহার করতে চাই তাহলে তাদের মডিউল এর প্যাকেজকে সবার প্রথমে আমাদের কোড এ ইমপোর্ট করতে হবে। পরবর্তীতে কাজ করতে করতে আমরা এমন অনেক গুলো প্যাকেজ দেখব এবং সেইগুলো ইমপোর্ট করে সেইগুলো নিয়ে কাজ করব এবং সেইগুলো সম্পর্কে গভীর ভাবে জানবো। কিন্তু একটা কথা আছে এখানে। যেকোনো প্যাকেজ ইমপোর্ট করতে হলে আগে আমাদেরকে সেই প্যাকেজ কে ইন্সটল করতে হবে। আমরা এক একটা প্যাকেজ ব্যবহার করবো আর তার আগে সেইগুলোকে ইন্সটল করে নিব। কমান্ড প্রম্পট এ যেয়ে “pip install” আর তারপর প্যাকেজ এর নাম দিলেই প্যাকেজ ইন্সটল হয়ে যাবে, যেমন “pip install scikit-learn” (ইমপোর্ট করাটা পরেই শিখবো)।

## জুপিটার নোটবুক

এখন আমরা একটা নোটবুক এর ব্যাপারে একটু দেখব। এটির নাম জুপিটার নোটবুক। এটি একটি ব্রাউজার বেসড নোটবুক, তবে ইন্টারনেট কানেকশন লাগবেনা এটি খুলতে। এই নোটবুক এর মাধ্যমে আমরা খুব সহজেই একি জায়গায় আমাদের পাইথনের কোড, কোডের বর্ণনা, প্রয়োজনীয় বিভিন্ন ফিগার, লিংক, ইকুয়েশন ইত্যাদি রাখতে পারব। কমান্ড প্রম্পট এ কোড করার চেয়ে, জুপিটার নোটবুক এ কোড করা অনেক সহজ এবং সুবিধাজনক। আমরা পরবর্তীতে কাজ করতে গিয়ে এই নোটবুক সম্পর্কে আরও জানব। তবে আমাদের কে এখন এই জুপিটার নোটবুক ইন্সটল করতে হবে। প্যাকেজ এর মতন ই “pip install jupyter notebook” লিখলে এই নোটবুক ইন্সটল হয়ে যাবে। আর তারপর কমান্ড প্রম্পট এ “jupyter notebook” লিখলেই এটি খুলে যাবে আর আমরা আমাদের কোড করার জন্য ঝাঁপিয়ে পড়তে পারব।

## অ্যানাকোন্ডা ডিস্ট্রিবিউশন

তো এতক্ষণ আমরা শিখলাম কিভাবে আমরা আমাদের কম্পিউটারে পাইথন ডেভেলপলপমেন্ট এনভাইরনমেন্ট তৈরি করব। কিন্তু এই কাজটা আমরা আরও একটু সহজ পদ্ধতিতে করতে পারতাম। অধিকাংশ পাইথন ডেভেলপাররা উপরের পদ্ধতিটাই অনুসরন করে এসেছে এতদিন এবং তাছাড়াও এই পদ্ধতিটা অবশ্যই জেনে রাখা ভালো, তাই এতক্ষণ এসব প্যাঁচাল পাড়লাম আপনাদের জেনে রাখার জন্য। যাই হোক সহজ পদ্ধতিটা বলি এখন। সেইটা হল অ্যানাকোন্ডা ডিস্ট্রিবিউশন ইন্সটল করা। আমরা “<https://www.anaconda.com/download/”> এখান থেকে অ্যানাকোন্ডা ডিস্ট্রিবিউশনটা ডাউনলোড করে নি (আমার সুপারিশ পাইথন ৩.x ভার্সনটা ডাউনলোড করা)। আর তারপর, ইন্সটলারটা রান করে নেক্সট, নেক্সট ক্লিক করে করে ইন্সটল করে ফেলি অ্যানাকোন্ডা ডিস্ট্রিবিউশনটা। যে যে অতিরিক্ত সুবিধা আমরা পাবো তা হল, আমাদের এনভাইরনমেন্ট ভেরিয়েবেলের পাথ আলাদা করে সেট করতে হবেনা, আমাদের আলাদা করে জুপিটার নোটবুক ইন্সটল করা লাগবেনা এবং সবচেয়ে বড় যে সুবিধা পাবো সেইটা হল, আমাদের আলাদা আলাদা করে ধরে ধরে এক একটা পাইথনের প্যাকেজ ইন্সটল করা লাগবেনা, সব প্যাকেজ অ্যানাকোন্ডা ডিস্ট্রিবিউশন ইন্সটলেশনের সাথে সাথেই ইন্সটল হয়ে যাবে।

![](https://lh3.googleusercontent.com/HJPMGGGEInqCUM9p_D4ZhoBRPMaMWbFSulcl07wkDZurnBXl4Zhu61FPM4V4WJpL5QtMggMSFXr3Pd8yxGmz3GYWqUlHtw1kvjK01EmtrvDZCI64BFHquhPRxfmzV5PsVI6eWO21)

## শেষ কথা

তো আপনারা নিশ্চয়ই আপনাদের কম্পিউটারটাকে পাইথনের কোড করার জন্য উপযুক্ত করে ফেলছেন এতক্ষণে তা সে আমার দেখানো প্রথম মাধ্যমেই হোক অথবা দ্বিতীয় মাধ্যমে। একটা মাধ্যমে করলেই হল। আপনার ইচ্ছা। কিন্তু যাই হোক না কেন, এবার আমরা আস্তে আস্তে হাতে কলমে কাজ করতে করতে অনেক কিছু শিখে ফেলব আশা করি। পাইথনে কোড করা, ডাটা নিয়ে একটু খোঁড়াখুঁড়ি করা (ডাটা মাইনিং) আর তারপর মেশিন লার্নিং এর কোড করতে করতে আমরা এই এখনের “আমরা” থেকে আরও একটু বেশি “জ্ঞানী আমরা” হয়ে যাবো।

## শেষের পরের কথা

আচ্ছা ধরুন আপনার কম্পিউটার এর অপারেটিং সিস্টেম ক্রাশ করল। কি করবেন আপনি? নতুন করে অপারেটিং সিস্টেম ইন্সটল করবেন। এরপর আস্তে আস্তে করে আপনার দরকারি যাবতীয় সব সফটওয়্যার আবার ইন্সটল করবেন, তাই নয় কি? কিন্তু ধরুন আপনি পিডিএফ ভিউয়ার ইন্সটল করতে ভুলে গেলেন। আপনার ২০ মিনিট পর পরীক্ষা। একটা চ্যাপ্টার আপনার পড়া বাকি আর দুর্ভাগ্যবশত সেইটা আপনার কাছে নাই। তো আপনি আপনার বন্ধুর কাছ থেকে অনলাইন থেকে চ্যাপ্টার টা নিলেন। দেখলেন সেইটা একটা পিডিএফ ফাইল। তো এখন কি করবেন আপনি? স্বভাবতই আপনি তখন পিডিএফ ভিউয়ার ইন্সটল করবেন না বরং অনলাইন পিডিএফ ভিউয়ার দিয়ে চোখ বুলিয়ে নিবেন চ্যাপ্টার টায়, যাতে পরীক্ষায় ওই চ্যাপ্টার থেকে কিছু আসলে অন্তত কিছু একটু লিখতে পারেন। দিন দিন আমাদের জীবন টাকে অনেক বেশি সহজ করে দিচ্ছে ইন্টারনেট এর ব্যবহার। পাইথন এ কোড করার ক্ষেত্রেও আপনি নিতে পারেন ইন্টারনেটের সুবিধা। দরকার পড়বেনা আপনার কোনো কিছু ইন্সটল করার। পাইথন, জুপিটার, কিম্বা অ্যানাকোন্ডা ডিস্ট্রিবিউশন কিছুই না। অনলাইনেই এখন রয়েছে অনেক অনেক গুলো পাইথন ইন্টারপ্রেটার যার দ্বারা আপনি সহজেই আপনার কম্পিউটারে পাইথন এনভাইরনমেন্ট তৈরি না করেও পাইথনে কোড করা শুরু করতে পারেন। যেমন "<https://www.tutorialspoint.com/execute_python_online.php>" এটি একটি আমার পছন্দের পাইথন ইন্টারপ্রেটার। এছাড়াও, "ডাটা ক্যাম্প" এর আছে নিজস্ব ইন্টারপ্রেটার। আর ক্যাগল সাইটের তো আছেই। তো কি? শুরু করে দিন পাইথনে কোড করা। যে ভাবে আপনার ইচ্ছা। তবে এই বইয়ে আমি প্রত্যেকটা কোড করেছি জুপিটার নোটবুকে এবং আমি আপনাদের ও জুপিটার নোটবুক এর ব্যবহার খুব ভালো মতন শিখিয়ে দিব আস্তে আস্তে।


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://rakibul-hassan.gitbook.io/mlbook-titanic-py/python-and-environment.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
